Ich verwende 'tail -f', um einer Protokolldatei zu folgen, während sie aktualisiert wird; Als nächstes pipere ich die Ausgabe von diesem an grep, um nur die Zeilen anzuzeigen, die einen Suchbegriff enthalten ("org.springframework" in diesem Fall); schließlich würde Ich mag ist, um die Ausgabe von grep kochend auf einen dritten Befehl, ‚schneiden‘:Wie leiten Sie die Eingabe über grep an ein anderes Dienstprogramm weiter?
tail -f logfile | grep org.springframework | cut -c 25-
Der Schnitt Befehl, um die ersten 25 Zeichen jeder Zeile für mich entfernen würde, wenn sie die Eingabe bekommen könnte von Grep! (Es funktioniert wie erwartet, wenn ich 'grep' aus der Kette eliminiere.)
Ich benutze cygwin mit bash.
Tatsächliche Ergebnisse: Wenn ich die zweite Pipe hinzufügen, um mit dem Befehl 'cut' zu verbinden, ist das Ergebnis, dass es hängt, als ob es auf Eingabe wartet (falls Sie sich wundern).
Wenn ich nach grep stoppen (ohne das Rohr zu ‚schneiden‘) funktioniert es (ohne die ersten 24 oder 25 Zeichen zu entfernen). – les2
Das eigentliche Problem hier ist, dass 'tail -f' niemals endet, also wartet der Rest der Pipeline auf mehr Eingabe – Hasturkun