Uma variável de ambiente é aquela que é exportada para subprocessos.
Este roteiro, ainda para se adaptar à sua necessidade, pode ser útil. Ele usa a sintaxe ${var:?word}
, com e sem :
para determinar o resultado:
#!/bin/sh
unset=0
null=0
if ! sh -c 'echo ${var?}' >/dev/null 2>/dev/null; then
unset=1
elif ! sh -c 'echo ${var:?}' >/dev/null 2>/dev/null; then
null=1
fi
echo "unset = $unset"
echo "null = $null"