[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Brauche Tip bei Shell-Script



Am Donnerstag, 22. April 2004 12:23 schrieb Timo Eckert:
> On Thu, 22 Apr 2004 12:13:53 +0200
> "Tauber, Mathias  Mailing" <tauberml@hdpnet.de> wrote:
>
> Hallo,
>
> > Super, danke!
>
> Kein Problem.
>
> > Geht statt dem
> >       if [[ `grep -c "$LOG" /filename_zum_aussschliessen` == 0
> > ]] auch das hier?
> >       if `grep -c "$LOG" /filename_zum_aussschliessen` == 0
>
> Nein,
>
> weil dier [ und ] im Scripting spezielle bedeutungen haben. Frag
> mich nicht genau welche, da müsste ich Dich auch die Manpage
> verweisen. ;)

[ ] sind im Prinzip das Gleiche wie test. Es ist also egal, ob Du 
if [ ... ]; then
oder
if test ...; then
schreibst.
Warum Du allerdings doppelte Klammern benutzt ist mir rätselhaft, 
die sind hier unnötig.

Im angegebenen Fall geht es allerdings auch ohne test, die 
if-Bedingung wertet ja das Ergebnis des nachfolgenden Kommandos aus 
(test liefert im Erfolgsfall 0, sonst != 0). Also kann man auch 
gleich das Ergebnis des Kommandos grep direkt benutzen:
if ! grep -q "$LOG" /filename_zum_aussschliessen; then
...
fi

Jan



Reply to: