Mam kilka skryptów CSH gdzie muszę sprawdzić, że niektóre zmienne środowiskowe są ustawione zanim zacznę robić rzeczy, więc robię tego rodzaju rzeczy:Idiomy csh w celu sprawdzenia istnienia zmiennych środowiskowych?
if ! $?STATE then
echo "Need to set STATE"
exit 1
endif
if ! $?DEST then
echo "Need to set DEST"
exit 1
endif
który jest dużo pisania. Czy istnieje bardziej elegancki idiom dla sprawdzenia, czy zmienna środowiskowa jest już ustawiona?
Uwagi:
- This question jest dość podobna, ale specjalnie prosi o rozwiązaniach w bash.
- Nie szukam ludzi, którzy doradzą mi trzymać się z dala od csh, ponieważ jest przeklęty, przerażający lub bash jest lepszy. Interesuje mnie bardziej eleganckie rozwiązanie niż to, z którego teraz korzystam.
[Nowsza podobny zapytania] (http://stackoverflow.com/questions/13343392/how-to-check-if-an-environment-variable-is- albo-unset-or-set-to-the-empty-stri) pokazuje również, jak sprawdzić kontekst wyrażenia, w którym przypadku/else/endif nie jest możliwe – cfi