Shell-Skript mit wc -l, if-Anweisung nicht funktioniert

Ist das problem mit diesem code:

    words=`wc -l /home/tmp/logged.log | awk '{print $1}'`;
    if [ $words == 26 ]
    then
    echo $words
    echo Good
    else
    echo Not so good
    fi

es gibt immer die else-Anweisung. Sogar tho das Ergebnis ist 26.
Ich habe auch versucht

     words=`wc -l < /home/jonathan/tmp/logged.log`;
  • Meine Wette ist, dass $words hat ein Ende newline "26\n".
  • Um zu verhindern, dass wc drucken den Dateinamen, damit es von stdin Lesen: words=$(wc -l < /home/tmp/logged.log)
InformationsquelleAutor user1204032 | 2012-02-24
Schreibe einen Kommentar