我正在編寫bash shell腳本。在那裏,我執行一個命令並將輸出保存到一個變量中。該值是這樣的:如何在bash腳本中獲取shell命令的中間值
0x34f0020d4 4 0x434346000 test_string
如何可以解析並保存第三串(即0x434346000)的值,假設值是由空格或製表符分隔?
我正在編寫bash shell腳本。在那裏,我執行一個命令並將輸出保存到一個變量中。該值是這樣的:如何在bash腳本中獲取shell命令的中間值
0x34f0020d4 4 0x434346000 test_string
如何可以解析並保存第三串(即0x434346000)的值,假設值是由空格或製表符分隔?
下面是使用awk
一個辦法:
var=$(echo "$string" | awk '{ print $3 }')
測試:
echo "$var"
結果:
0x434346000
您也可以使用剪切命令。 echo「axbxc」|切-f 2 -d「×」給出b
把你的命令,其給出了這種方式在上述輸出:
x=($(your command))
$ echo ${x[2]}
0x434346000
該命令的輸出被存儲在數組中的「x」,和因此數組的索引2包含第三個元素。
使用殼read
命令:
read first second third rest <<< "$line"
echo $third
使用數組索引值:
arr=("0x34f0020d4 4 0x434346000 test_string")
echo "${arr[2]}"