Ich möchte alle *.h
finden ,*.cpp
Dateien in Ordnern mit definierter Maske, wie */trunk/src*
. So kann ich separat *.h
finden und *.cpp
Dateien:
find . -path "*/trunk/src/*.h"
find . -path "*/trunk/src/*.cpp"
Was ist der beste Weg, um die Dateiliste beider Typen (*.h
und *.cpp
)?
PS Ich möchte die Liste an grep
weiterleiten .
Akzeptierte Antwort:
Sie können -o
verwenden für „oder“:
find . -path '*/trunk/src/*.h' -o -path '*/trunk/src/*.cpp'
was dasselbe ist wie
find . -path '*/trunk/src/*' ( -name '*.h' -o -name '*.cpp' )
Wenn Sie grep auf diesen Dateien ausführen möchten:
find . ( -path '*/trunk/src/*.h' -o -path '*/trunk/src/*.cpp' ) -exec grep PATTERN {} +
oder
find . -path '*/trunk/src/*' ( -name '*.h' -o -name '*.cpp' ) -exec grep PATTERN {} +