有一个字符串 var=value
,怎么用shell命令取到value?shell
这时候cut
就派上用场了。code
echo "var=value" | cut -d= -f2
就会获得value
。字符串
-d=
表示 =
是分隔符,把字符串分割。var=value
会分割成两个fields. -f2
表示输出第二个field,获得value
。it
echo "var=value" | cut -d= -f2
将会获得var
。im
echo "var=value1=value2"| cut -d= -f1-2
-f1-2
表示从第一个field到第二个fied,上述命令将会输出var=value1
.co
若是是-f1-3
,表示从第一个field到第三个field,实际上会输出整个字符串。字符
-f1-
表示从第一个field开始,到后面全部field。实际上也是整个字符串。分割
echo "var=value1=value2"| cut -d= -f-2
也会输出var=value1
。-f-2
表示第2个field以前的全部field,包含第2个field。
有人说不想输出分割符,这个也能够。若是你想用逗号分割各个field.
echo "var=value1=value2"| cut -d= -f1- --output-delimiter=,
若是你想用空格分割各个field,传递给--output-delimiter
的空格要加引号
echo "var=value1=value2"| cut -d= -f1- --output-delimiter=" "