Ich versuche, eine IF-Anweisung aus der Ausgabe eines ausgeführten Befehls zu erstellen. Hier ist, wie ich es versuche, aber es funktioniert nicht. Kennt jemand den richtigen Weg, um dies zu tun?
if [ "`netstat -lnp | grep ':8080'`" == *java* ]; then
echo "Found a Tomcat!"
fi
quelle
-q
Option grep anstelle von / dev / null. Mit-q
gibt grep nichts aus und bricht die Suche nach dem ersten Treffer ab.Noch einfacher,
Wenn Sie nur eine Sache machen wollen.
quelle
Sie können präziser und dennoch einfacher mit awk zusammenarbeiten.
Um die Struktur Ihres Befehls genauer abzugleichen, können Sie den Platzhalterabgleich für eine Zeichenfolge in einer Shell auf übliche Weise mit dem
case
Konstrukt durchführen.quelle
Ein weiteres Beispiel aus der Praxis :)
quelle
HEAD
das? Ist das eine benutzerdefinierte Funktion oder ein Alias auf Ihrem System?usr/bin/HEAD → lwp-request
. Und die LWP-Anfrage scheint diese zu sein . Ich bin mir nicht sicher, wie ich dazu gekommen bin (nicht manuell sicher), oder ob es standardmäßig alles gibt. Es scheint auch Kleinbuchstabenusr/bin/head
zu geben .