Что такое рыбий панцирь, эквивалентный следующему bash:
echo ${TEST:-1}
В bash это выведет значение TEST, если оно было, или 1, если его не было.
Что такое рыбий панцирь, эквивалентный следующему bash:
echo ${TEST:-1}
В bash это выведет значение TEST, если оно было, или 1, если его не было.
Ответы:
Я считаю, что вам нужна временная переменная (или функция). Если
$TEST
не существует, он расширяется до нуля и$test_or
содержит только1
. Было бы неплохо иметь реальный способ сделать это, но в настоящее время синтаксис является проблемой, и не кажется, что он действительно нужен для большинства целей.Кроме того, если все, что вам нужно, это изменить,
$TEST
если он еще не существует, вы можете использоватьset -q
.источник
Чтобы ссылаться на переменную и предоставлять значение по умолчанию в строке, вы можете использовать подстановку команд, содержащую условие, которое действует
echo
в обеих ветвях.Поскольку это довольно многословно, вы можете инициализировать переменную в другой строке, когда она не установлена.
Если вы действительно хотите иметь возможность заменить встроенное значение по умолчанию, вы можете сделать это в функции с помощью косвенного обращения, а затем вызвать эту функцию.
источник