我正在编写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]}"