有一個字符串 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=" "