Что такое переносимый и канонический способ проверить, является ли переменная пустой / undefined в оболочке script? Он должен работать во всех sh-подобных оболочках. То, что я делаю сейчас, это что-то вроде:
if [ -z "$var" ] ; then
...
и для обратного, делая что-то, когда переменная не пуста / undefined:
if [ -n "$var" ] ; then
...
И пока эти работы для скриптов, которые я пишу сейчас, , я хотел бы знать способ, который будет работать в любой разумно совместимой sh-подобной оболочке, даже в некоторой более неясной среде, чем Linux PC с GNU userland и bash или тире.
Я ищу "экспертный ответ" от кого-то, кто имеет опыт работы в разных средах оболочки, и знает подводные камни разных способов делать что-то, а не такое мнение, как "это должно работать".