Bash,如何在一行代码中创建数组

如何在一个步骤而不是两个阶段中创建一个数组,如下所示? 下面的示例在实时Linux系统上执行。

POSITION=`volt |grep ate |awk '{print $4}'` #returns three integers 
declare -a POSITION_ARRAY=($POSITION)  #create an array  

评论
nin
nin

只需将命令放在括号中即可。

By the way, declare -a is not needed, and backticks are deprecated in favour of $().

POSITION_ARRAY=( $(volt | grep ate | awk '{print $4}') )

FWIW可以合并grep和AWK命令:

POSITION_ARRAY=( $(volt | awk '/ate/ {print $4}') )
点赞
评论