Sua primeira abordagem ( find . -type f -name "Mar" -name "Jun"
) teve dois problemas:
-
find
combina regras diferentes usando um "e" lógico por padrão - Você fez uma correspondência exata de nome
Assim, as únicas correspondências possíveis foram arquivos que foram nomeadas exatamente "Jun" e
Em vez disso, faça o seguinte:
- Você pode usar caracteres curinga na pesquisa de nome (
*
significa qualquer sequência de caracteres possivelmente vazia), envolto em aspas para impedir a interpretação pelo shell - combine as duas regras com
-o
( ou ) - isso exige que você envolva as regras alternativas entre parênteses para substituir a precedência do operador usual ou para repetir a regra comum-type f
Exemplo:
$ ls -1
1st-of-June
January
March
$ find . -type f -name '*Mar*' -o -type f -name '*Jun*'
./1st-of-June
./March