Além dessas respostas perspicazes, há vários padrões que você pode usar para corresponder a grupos de arquivos. Com expansão de nome de arquivo e pattern de padrões , você pode dizer ao bash para combinar coisas como todos os arquivos em um diretório, todos os arquivos iniciando com alguma coisa, todos os arquivos com a mesma extensão, etc.
É claro que, se você estiver usando o rm, você deve ter muito cuidado para não excluir as coisas que não deseja. Eu recomendo usar ls primeiro, para listar o que o argumento do caminho mostrará.
Aqui estão alguns exemplos.
-
Digamos que você queira corresponder todos os arquivos em um diretório, para ver o que um comando rm processaria, procure com ls . Você pode usar o operador asterisco ( * ) glob para corresponder a qualquer quantidade de caracteres.
ls /some/path/*
-
Ou talvez todos os arquivos que começam com teste:
ls /some/path/test*'
-
Como sobre todos os arquivos que começam com teste, com um caractere e terminam com .sh . Você poderia usar o caractere de interrogação ( ? ) para corresponder a um caractere.
ls /some/path/test?.sh
-
Digamos que você tenha nove arquivos test1.sh , test2.sh , etc, até test9.sh e deseja excluir esses scripts de teste. Você também tem um testa.sh que deseja manter. Você pode pesquisar todos os arquivos que começam com teste, os números de um a nove ou classes não alfabéticas e terminar com .sh . Eles usam os colchetes ( [] ) para corresponder a grupos de caracteres.
ls /some/path/test[1-9].sh
ls /some/path/test[!:alpha:].sh
Correspondências como essas também podem ser roteirizadas de forma bastante simples, permitindo agrupamentos muito bem ajustados ou amplos de arquivos dentro de scripts para automação.