Чи існує в 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 твердження, яких я вважаю за краще уникати.
Я просто шукаю синтаксис ярликів. Це можливо?