Esiste in Linux bash qualcosa di simile al seguente codice in PHP:
list($var1, $var2, $var3) = function_that_returns_a_three_element_array() ;
cioè si assegna in una frase un valore corrispondente a 3 diverse variabili.
Diciamo che ho la funzione bash myBashFuntion
che scrive su stdout la stringa "qwert asdfg zxcvb". È possibile fare qualcosa come:
(var1 var2 var3) = ( `myBashFuntion param1 param2` )
La parte a sinistra del segno di uguale non è ovviamente una sintassi valida. Sto solo cercando di spiegare cosa sto chiedendo.
Quello che funziona, però, è il seguente:
array = ( `myBashFuntion param1 param2` )
echo ${array[0]} ${array[1]} ${array[2]}
Ma un array indicizzato non è così descrittivo come nomi di variabili semplici.
Tuttavia, potrei semplicemente fare:
var1 = ${array[0]} ; var2 = ${array[1]} ; var3 = ${array[2]}
Ma queste sono altre 3 affermazioni che preferirei evitare.
Sto solo cercando una sintassi di scorciatoia. È possibile?