No bash shell ls
pode usar uma funcionalidade lógica OU através (é claro que eu também poderia fazer, ls name1 name2
mas meus exemplos verdadeiros são mais complicados):
ls @(name1|name2)
Existe uma maneira de fazer isso usando find
?
Minha implementação ingênua:
find . -maxdepth 1 -name @("name1"|"name2")
não funciona (apenas não gera nada)
OPERATORS
seção da página defind
manual?Respostas:
Você pode usar
-o
para lógicoOR
. Cuidado, porém, que todos osfind
predicados têm valores lógicos; portanto, você geralmente precisará agrupar asOR
coisas com parênteses. E como parens também tem um significado para o shell, você também precisará escapar deles:fonte
Para responder sua pergunta, você pode usar a
-o
opção:como isso:
fonte