find -exec mit Pipe

Der Befehl find ist an sich schon ein sehr hilfreiches Kommando mit unzähligen Möglichkeiten. Allerdings ist es nicht direkt möglich, eine Pipe (|) innerhalb des Parameters -exec einzusetzen; damit ist man auf einfache Kommandos beschränkt und kann deren Ausgabe nicht weiterverarbeiten.

Startet man innerhalb des -exec Parameters jedoch eine weitere Shell, kann dort eine Pipe eingesetzt werden. Beispielsweise sucht dieses Kommando alle Verzeichnisse, die mehr als eine Datei enthalten:

find . -type d -exec sh -c 'ls -l "{}/" | grep -v ^l | wc -l | grep -v 2' \;

 

Schreiben Sie einen Kommentar

Ihre E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.