tail -va Datei, während eine Liste von Wörtern ausgeschlossen wird
13165
John
Ich möchte eine Protokolldatei abschließen, in die fortlaufend geschrieben wird, aber verschiedene Einträge ausschließen, die "häufig" sind. Ich sehe nur Fehler usw., wenn sie ausgelöst werden. Ich kann an grep -v "pattern" pfeifen, möchte aber idealerweise eine Datei mit Einträgen zum Überspringen verwenden. Irgendwelche Ideen?
Machen Sie das grep -v "` cat FILE_WITH_ENTRIES_TO_SKIP` ", oder die Shell erweitert Sonderzeichen in der Musterliste.
Gilles vor 14 Jahren
0
Du meinst "grep -v" \ "cat FILE_WITH_ENTIRES_TO_SKIP \" "? (Sie müssen Backtics in Markdown entkommen.)
Wuffers vor 14 Jahren
0
2
garyjohn
Mit dieser -fOption grepkönnen Sie eine Datei angeben, die Muster enthält, ein Muster pro Zeile. Siehe die grep(1)Manpage.
Darüber hinaus unbufferdeaktiviert der auf einigen Systemen verfügbare Befehl die Ausgabepufferung, die normalerweise in Pipelines auftritt. Das Hinzufügen des grepFilters kann ansonsten die Ausgabe Ihrer Pipeline verzögern. Weitere unbuffer(1)Informationen finden Sie in der Manpage.
Sie können erwähnen, dass Sie sowohl -f als auch -v für die gegebenen Anforderungen benötigen.
Hans-Peter Störr vor 11 Jahren
0
Es klingt so, als würden sie bestimmte Ergebnisse ausschließen, nicht Muster, so dass eine Suche mit festem String (-F) angemessener wäre. Ich würde mit tail -v [file_to_tail] | gehen grep -Fvf [file_with_list_of_lines_to_exclude] `
Hammer Bro. vor 7 Jahren
0
0
Velociraptors
Verwenden Sie grep -f FILEund es werden Muster aus dieser Datei erhalten. Weitere Informationen finden Sie in der Manpage .
0
Ian C.
Mein grep enthält eine --exclude-from=FILEOption, mit der ich Ausschlussmuster aus einer Datei hinzufügen kann. Ich habe:
my-macbook-pro:Sun America ianchesal$ grep --version grep (GNU grep) 2.5.1
Sie könnten also folgendes tun:
tail -f <file> | grep --exclude-from=excludes.txt
Msgstr "Dateien überspringen, deren Basisname mit einer der aus FILE gelesenen Dateinamen übereinstimmt (mit Platzhalterabgleich wie unter --exclude beschrieben)." Es ist also das Überspringen von Dateien, keine Übereinstimmungen
Janus Troelsen vor 11 Jahren
0