Suche in bestimmten Dateien - grep Frage

Dieses Thema im Forum "Mac OS X - Unix & Terminal" wurde erstellt von harald13, 30.06.2005.

  1. harald13

    harald13 Thread Starter MacUser Mitglied

    Beiträge:
    19
    Zustimmungen:
    1
    MacUser seit:
    02.04.2005
    Hallo,

    ich wüsste gerne, wie ich folgende Fragestellung in einem Kommando unterbringen kann.

    Ich suche Dateien ab einem bestimmten Verzeichnis, die einen bestimmten Wortbestandteil im Dateinnamen haben. Die gefundenen Dateien (nicht die Dateinamen) möchte ich dann grep vorwerfen damit darin nach dem String "u!" gesucht wird. Wenn da jemand einen Tipp, wie man das elegant in einer Befehlszeile unterbingen kann, wäre toll.

    ... harald
     
  2. ApfelRalf

    ApfelRalf MacUser Mitglied

    Beiträge:
    642
    Zustimmungen:
    22
    MacUser seit:
    14.01.2004
    find . -name file_\* -exec grep -H u! {} ";"

    Bedeutet:
    Suche ab dem aktuellen Verzeichnis (.) alle Dateien, die mit dem Namen (-name) "file_" (beachte den mit Backslash maskierten Asteriks (*)) und übergebe die Datei anschliessend an das Kommando "grep" und suche darin die Zeichenkette "u!". Vor der Ausgabe der gefundenen Kette hätte ich gerne noch den Dateinamen (-H) angezeigt, in dem der String vorkommt. Das abschliessende Semikolon muss ebenfalls maskiert, und somit vor der Shell "versteckt" werden. Daher entweder in Anführungszeichen (wie hier) oder stattdessen ein Backslash davor
     
    Zuletzt bearbeitet: 30.06.2005
  3. cilly

    cilly Gast

    find <verzeichnis> -name "*<WortbestandteilimDateinamen>*" -exec grep "u!" {} \;

    Ein Beispiel:

    find / -name "*.html" -exec grep "html" {} \;

    sucht alle Dateien .html nach Inhalt html ab.

    Wenn du case insensitive suchen möchtest, dann benutze iname anstatt name.

    Siehe hierzu:

    man find
    man grep
     
  4. harald13

    harald13 Thread Starter MacUser Mitglied

    Beiträge:
    19
    Zustimmungen:
    1
    MacUser seit:
    02.04.2005
    Super, vielen Dank euch beiden .....
     
Die Seite wird geladen...

Diese Seite empfehlen