Quiero encontrar todos los *.h
,*.cpp
archivos en carpetas con máscara definida, como */trunk/src*
. Entonces, puedo encontrar por separado *.h
y *.cpp
archivos:
find . -path "*/trunk/src/*.h"
find . -path "*/trunk/src/*.cpp"
¿Cuál es la mejor manera de obtener la lista de archivos de ambos tipos (*.h
y *.cpp
)?
PD:me gustaría canalizar la lista a grep
.
Respuesta aceptada:
Puedes usar -o
para “o”:
find . -path '*/trunk/src/*.h' -o -path '*/trunk/src/*.cpp'
que es lo mismo que
find . -path '*/trunk/src/*' ( -name '*.h' -o -name '*.cpp' )
Si desea ejecutar grep en estos archivos:
find . ( -path '*/trunk/src/*.h' -o -path '*/trunk/src/*.cpp' ) -exec grep PATTERN {} +
o
find . -path '*/trunk/src/*' ( -name '*.h' -o -name '*.cpp' ) -exec grep PATTERN {} +