Timkle schrieb:
Hey Leute,
ich schreibe gerade ein Script indem folgendes vorkommt
| #!/bin/bash
if cut -d: -f3 ./testfile.txt | sed -n 1p = "Test"; then
echo "Ist ok"
fi
|
Um nahe bei Deinem Code zu bleiben:
| test $(cut -d: -f3 ./testfile.txt | sed -n 1p) = "Fest" && echo "Ist ok"
|
Test statt if, $(...) um die Ausgabe des Befehls zu vergleichen, && als positiver Ast des Tests.
Allerdings liefert beides für eine Datei, in der in Zeile 1 nur Test steht, kein anderes Feld, keine Doppelpunkte, auch "Ist ok". Wieso das so ist habe ich nicht untersucht - muss ein cut-Ding sein.
Kürzer ist es nur sed zu verwenden:
| sed -rn "1 s/^([^:]*:){2}Test:.*/Ist ok/p" testfile.txt
|
aber seahawk1986s AWK-Lösung ist wohl besser verständlich und macht das gleiche..