shell linux 切割字符串
在Shell脚本中,可以使用内置的cut命令来切割字符串。cut命令主要有三个选项 -c、-f和-d,分别表示按字符、按字段和指定分隔符来切割字符串。
按字符切割:
echo "Hello World" | cut -c 1-5
# 输出:Hello
按字段切割:
echo "apple,orange,banana" | cut -d ',' -f 2
# 输出:orange
echo "apple orange banana" | cut -d ' ' -f 2
# 输出:orange
除了cut命令,还可以使用awk、sed等工具来切割字符串。例如,使用awk按空格切割字符串:
echo "apple orange banana" | awk '{print $2}'
# 输出:orange
按照空格 切割的话
如果是有多个空格,
下面的例子,里面是中间有4个空格
echo "shanghai001 123456 ifconfig-push 192.168.1.1 192.168.1.22" | cut -d ' ' -f 1
输出: shanghai001
echo "shanghai001 123456 ifconfig-push 192.168.1.1 192.168.1.22" | cut -d ' ' -f 2
输出空格
echo "shanghai001 123456 ifconfig-push 192.168.1.1 192.168.1.22" | cut -d ' ' -f 3
输出空格
echo "shanghai001 123456 ifconfig-push 192.168.1.1 192.168.1.22" | cut -d ' ' -f 4
输出空格
echo "shanghai001 123456 ifconfig-push 192.168.1.1 192.168.1.22" | cut -d ' ' -f 5
123456