Utilizzando find
è -regex
argomento:
find . -regex '.*/Robert\.\(h\|cpp\)$'
O semplicemente usando -name
:
find . -name 'Robert.*' -a \( -name '*.cpp' -o -name '*.h' \)
find -name "*Robert*" \( -name "*.pdf" -o -name "*.jpg" \)
Il -o
rappresenta un OR
condizione e puoi aggiungerne quanti ne desideri all'interno delle parentesi graffe. Quindi questo dice di trovare tutti i file che contengono la parola "Robert" ovunque nei loro nomi e i cui nomi terminano in "pdf" o "jpg".
In alternativa all'utilizzo di -regex
opzione su find
, poiché la domanda è etichettata bash, puoi utilizzare il meccanismo di espansione delle parentesi graffe:
eval find . -false "-o -name Robert".{jpg,pdf}
La mia preferenza:
find . -name '*.jpg' -o -name '*.png' -print | grep Robert