在程式中經常會遇到將linux命令執行結果賦值給變數的情況,但是碰到反斜槓時要特別注意,推薦使用$()
[root@node0xa1 /]# strtest="\1\2\3\4"
[root@node0xa1 /]# result=`echo $strtest|awk -F"\\" '{print $2}'`
bash: command substitution: line 1: unexpected EOF while looking for matching `"'
bash: command substitution: line 2: syntax error: unexpected end of file
[root@node0xa1 /]# result=$(echo $strtest|awk -F"\\" '{print $2}')
[root@node0xa1 /]# echo $result
1
[root@node0xa1 /]# result=`echo $strtest|awk -F'\' '{print $2}'`
[root@node0xa1 /]# echo $result
1
[root@node0xa1 /]# result=$(echo $strtest|awk -F'\' '{print $2}')
[root@node0xa1 /]# echo $result
1