Pomocí find 's -regex argument:
find . -regex '.*/Robert\.\(h\|cpp\)$'
Nebo stačí použít -name :
find . -name 'Robert.*' -a \( -name '*.cpp' -o -name '*.h' \)
find -name "*Robert*" \( -name "*.pdf" -o -name "*.jpg" \)
-o představuje OR stavu a v rámci rovnátek můžete přidat libovolný počet. Takže to říká, že se mají najít všechny soubory obsahující slovo „Robert“ kdekoli ve svém názvu a jejichž názvy končí buď „pdf“ nebo „jpg“.
Jako alternativa k použití -regex možnost na find , protože otázka je označena jako bash, můžete použít mechanismus roztažení výztuhy:
eval find . -false "-o -name Robert".{jpg,pdf}
Moje preference:
find . -name '*.jpg' -o -name '*.png' -print | grep Robert