Mit "tee" die Ubuntu-Terminalausgabe selektiv protokollieren?

366
None

Ich muss die Terminalausgabe protokollieren. Ich brauche aber nur einige Ausgaben, die mit einem Schlüsselwort beginnen (z. B. beginnt mit "error"). Ich verwende so etwas wie:

ls | tee "log.txt" 

In diesem Beispielbefehl möchte ich nicht alles protokollieren, was das Temrinal anzeigt. Nur sagen, wenn ich eine Ausgabe gefunden habe, die mit "De" beginnt. Wie kann ich das erreichen?

1

1 Antwort auf die Frage

0
dsstorefile1

Wenn Ihre Shell es ist bash, können Sie die Ausgabe von mit der Prozessersetzung teein die Eingabe grepumwandeln. Wenn Sie zum Beispiel die Ausgabe von lsZeilen filtern, die mit "De" beginnen log.txt, lautet der Befehl:

ls |tee >(grep ^De >| log.txt)