mit grep an den Dateinamen, anstelle der gefundenen Zeile

Diskutiere mit grep an den Dateinamen, anstelle der gefundenen Zeile im Shell-Skripte Forum im Bereich Programmieren unter Linux/Unix; Hallo zusammen :) Ich habe auf meiner Maschine mehrere Log-Dateien mit dem Namen portal.log. Jetzt möchte ich einen Einzeiler haben, mit dem...

  1. #1 Kryptaesthesie, 25.05.2009
    Kryptaesthesie

    Kryptaesthesie Jungspund

    Dabei seit:
    02.02.2006
    Beiträge:
    23
    Zustimmungen:
    0
    Ort:
    NRW
    Hallo zusammen :)

    Ich habe auf meiner Maschine mehrere Log-Dateien mit dem Namen portal.log.
    Jetzt möchte ich einen Einzeiler haben, mit dem ich alle Log-Dateien ermitteln kann, die Einträge vom heutigen Datum (Format: yyyy-mm-dd) haben.
    Ich bin soweit, dass ich mir alle Einträge filtern kann:
    Code:
    clear ; time find / -name 'portal.log' -type f -exec cat {} \; | grep `date '+%Y-%m-%d'`
    
    Wenn ich dann bei grep -H hinschreibe, um den Dateinamen auszugeben, dann steht allerdings immer nur (standard input) anstelle des Dateinamens.

    Wie muss ich den Befehl umbauen, damit ich an den Pfad+Dateinamen komme, in dem Einträge von aktuellen Datum stehen?

    Danke euch schon mal für eure Hilfe!
    Gruß
    Gerrit :)
     
  2. #2 HeadCrash, 25.05.2009
    Zuletzt bearbeitet: 25.05.2009
    HeadCrash

    HeadCrash Routinier

    Dabei seit:
    16.05.2009
    Beiträge:
    483
    Zustimmungen:
    1
    Ort:
    Bayern
    Hallo

    das Problem ist, das cat den Dateinamen nicht mit an grep übergibt und an dieser stelle überflüßig ist.

    Code:
    clear ; time find / -name 'portal.log' -type f -exec grep -H `date '+%Y-%m-%d'` {} \;
    
    Da du nur den Dateinamen willst:

    Code:
    clear ; time find / -name 'portal.log' -type f -exec grep -H `date '+%Y-%m-%d'` {} \; | awk -F: '{ print ($1) }' | uniq
    
    mfg
    HeadCrash

    Edit:
    ncoh ein "| uniq" angehängt
     
  3. #3 Kryptaesthesie, 25.05.2009
    Kryptaesthesie

    Kryptaesthesie Jungspund

    Dabei seit:
    02.02.2006
    Beiträge:
    23
    Zustimmungen:
    0
    Ort:
    NRW
    Genau das, was ich gesucht habe! :)
    Vielen Dank!
     
Thema:

mit grep an den Dateinamen, anstelle der gefundenen Zeile

Die Seite wird geladen...

mit grep an den Dateinamen, anstelle der gefundenen Zeile - Ähnliche Themen

  1. Textdatei filtern und löschen mit grep /sed

    Textdatei filtern und löschen mit grep /sed: Guten morgen liebe Forenmitglieder, da ich etliche Jahre in Sachen Linux pausiert habe und nun wegen beruflichem Wechsel wieder dort einsteige...
  2. grep + regex zum Log parsen

    grep + regex zum Log parsen: Hi zusammen, ich möchte ein Logfile gerne auf eine Stringkombination durchsuchen. D.h. im Log steht sowas wie: 2016-12-20 10:10:43 ETL started :...
  3. Kurztipp: Unerwünschte grep-Ausgaben vermeiden

    Kurztipp: Unerwünschte grep-Ausgaben vermeiden: Selbst aus altbekannten Programmen kann man oft noch einiges mehr herausholen - man muss sich nur einmal gründlich mit ihnen auseinandersetzen....
  4. GNU Grep 2.19 freigegeben

    GNU Grep 2.19 freigegeben: Von dem Textsuchprogramm GNU Grep ist jetzt Version 2.19 erschienen, die um durchschnittlich zehn Prozent schneller als die Vorgängerversion...
  5. KWin 4.90.1 wartet auf Bugreports

    KWin 4.90.1 wartet auf Bugreports: Martin Gräßlin, Maintainer des KDE-Fenstermanagers, hat den Code für KWin/5 als für gut genug befunden, um ihn im erweiterten Kreis testen zu...