Eu acredito que você precisa de variável temporária (ou uma função). Se $TEST
não existir, será expandido para nada e $test_or
conterá apenas 1
. Seria bom ter uma maneira real de fazer isso, mas atualmente a sintaxe é um problema, e não parece ser realmente necessário para a maioria das finalidades.
set test_or $TEST 1
echo $test_or[1]
Além disso, se tudo o que você deseja é modificar $TEST
, se ele ainda não existir, use set -q
.
set -q TEST; or set TEST 1
echo $TEST