linux-l: Test auf Environmentvariable

Bjoern Feustel s630221 at tfh-berlin.de
Di Jul 15 14:19:44 CEST 1997


On Mon, 14 Jul 1997, Florian Schintke wrote:

> Ich muss in Shellscripts testen, ob eine Umgebungsvariable gesetzt ist
> oder nicht und danach entscheiden, was zu tun ist. (Also mit if...) 
> 
> Wie geht das in der tcsh,  wie in der  sh, wie in der  zsh, wie in der
> csh, wie in der ksh, wie in der bash? 

HiHo.

Also unter der bash kannst du einfach folgendes schreiben:

--cut------------cut-----------cut--

# !/bin/bash
if [ $EDI ]; then
        echo "ja!"
else
        echo "nein!"
fi

--cut------------cut-----------cut--

Das testet dann, ob die umgebungsvariable EDI gesetzt ist.
Wenn EDI allerdings vorhanden ist aber keinen inhalt hat, dann ergibt 
sich auch ein nein. Um das abzufangen wuerde ich folgendes machen:

--cut------------cut-----------cut--

# !/bin/bash
if (env| grep -c "^EDI=">/dev/null); then
        echo "ja!"
else
        echo "nein!"
fi

--cut------------cut-----------cut--

Es gibt aber sicher noch einfachere varianten, da ich eigentlich keine 
ahnung von shell-programmierung habe. Aber vielleicht hilft das ja schon 
weiter.

ciao
bjoern.

PS: Ich habe mal eben aus #!/bin/bash ein #!/bin/tcsh gemacht und beide 
abfragen scheinen auch zu funktionieren.

 .=================================---------------------------- - - -  -  -   -
'  .d8888. db   db d888888b db    db  .d8b.  
|  88'  YP 88   88   `88'   88    88 d8' `8b  Mail: s630221 at tfh-berlin.de
|  `8bo.   88ooo88    88    Y8    8P 88ooo88  
|    `Y8b. 88~~~88    88    `8b  d8' 88~~~88
|  db   8D 88   88   .88.    `8bd8'  88   88 
`  `8888Y' YP   YP Y888888P    YP    YP   YP  Legalize it!
 '=================================---------------------------- - - -  -  -   -





Mehr Informationen über die Mailingliste linux-l