Если опция nounset
включена с set -u
или set -o nounset
, [ -z "$NVM_PROFILE" ]
приведет к ошибке, если NVM_PROFILE
не установлен. Использование -
или :-
до явным образом расширяет unset-переменную до пустой строки, чтобы избежать этой ошибки.
Альтернативой использованию set -u
является явная проверка, установлена ли переменная. (Это работает в zsh
и bash
.)
[[ ! -v NVM_PROFILE || -z $NVM_PROFILE ]]