在linux bash中存在类似于PHP中的以下代码:
list($var1, $var2, $var3) = function_that_returns_a_three_element_array() ;
即您在一个句子中为3个不同的变量分配相应的值。
让我们说我有一个bash函数myBashFuntion,它写入stdout字符串“qwert asdfg zxcvb”。
是可能做的像:
(var1 var2 var3) = ( `myBashFuntion param1 param2` )
当然,等号左边的部分不是有效的语法。我只是想解释我要的是什么。
然而,什么工作是以下:
array = ( `myBashFuntion param1 param2` )
echo ${array[0]} ${array[1]} ${array[2]}
但索引数组不像纯变量名那样描述。
但是,我可以做:
var1 = ${array[0]} ; var2 = ${array[1]} ; var3 = ${array[2]}
但是,这3个更多的语句,我想避免。
我只是寻找一个快捷语法。可能吗?