Como posso excluir arquivos no terminal fluentemente?

33

Por exemplo, eu faço

cd Music
dir

e pegue

123456789.mp3
qweerkrtrkgljdjfkdjfdkf.mp3
a.mp3
b.mp3
blabla.mp3

como excluo, digamos, os arquivos qweerkrtrkgljdjfkdjfdkf.mp3 e blabla.mp3 com menos esforço?

UPD : A ideia principal é que os nomes dos arquivos possam ser longos, então eu realmente não quero digitá-los.

Chelios
fonte

Respostas:

57

Tente o seguinte:

rm -f 2.mp3 blabla.mp3

rmremove os arquivos e o -fforça (para que não pare, perguntando se você deseja excluir o arquivo). Se isso não estiver no seu diretório pessoal, faça o prefixo sudo. Aqui está outra maneira que pode exigir menos digitação (um pouco mais difícil de ler)

rm -f {2,blabla}.mp3

Isso se expande para 2.mp3 blabla.mp3. Se você quiser usar nomes de arquivos maiores, poderá usar o caractere curinga ( *), que retornará todos os itens que começam / terminam com o nome do arquivo escolhido. Por exemplo:

rm -f bla*

irá remover todos os arquivos começando com bla. Se você usou isso:

rm -f *.mp3

Ele removerá todos os arquivos que terminam com .mp3. Se você usou isso:

rm -f bla*.mp3

Ele removerá todos os arquivos começando blae terminando com .mp3. As possibilidades são quase infinitas com o *personagem: P

MiJyn
fonte
1
Eu sabia que alguém iria entrar. Teclado HTC estúpido!
2
Se os arquivos pertencerem a você em sua própria pasta pessoal, você não precisará usar o sudo.
Bom ponto. Eu atualizei minha postagem.
MJyn
3
Talvez observe, além disso, a capacidade de usar o caractere de tabulação para concluir os nomes de arquivos?
Darael
E se eu quiser incluir subdiretórios? Tentei adicionar -r, mas não funcionou. Eu tenho vários daqueles irritantes ._. arquivos de índice mac que desejo limpar de um site.
Frantumn
4

Assim como todo mundo diz, rm -f <file>é o caminho a percorrer, no entanto, como o esquilo disse, você pode digitar as primeiras letras e pressionar <TAB>e ele preencherá automaticamente o nome do arquivo.

especiaria
fonte
0

Tente o seguinte: rm qweer*.mp3 bla*.mp3

Cuidado: Se houver um nome de arquivo iniciado com essas letras, esse comando detectará isso.

Hckr
fonte
0

Como o @Hckr já mencionou, não há semelhanças entre o nome. Você pode usar caracteres curinga, por exemplo rm *.mp3, removeria todos os arquivos cujos nomes terminam com .mp3. Se não houver semelhanças, você precisará especificar cada arquivo individualmente.

Na verdade, você pode salvar algumas digitações usando o preenchimento de guias. No seu exemplo, se você digitar rm qe pressionar a tecla Tabulador, ela será concluída rm qweerkrtrkgljdjfkdjfdkf.mp3. Isso funciona porque é o único arquivo que começa com q. Se você digitar, rm bisso não seria suficiente para a conclusão, porque você tem dois arquivos começando com b.

André Stannek
fonte
0

Fácil rm 2.mp3 blabla.mp3.

CUIDADO: Isso causará exclusão permanente!


Para arquivos:

1234.MP3 1345.MP3 1234.MP4

rm -f 1*3*.MP3 excluiria os 2 primeiros, não confirme, PERMANENTEMENTE!

* é qualquer coisa em branco, por isso ainda exclui a segunda.


fonte
1
Talvez -f após rm
Se houver um arquivo que comece com q, digite q *; se houver mais, ele excluirá todos os q-begginers.
Você sabe que pode editar sua própria resposta para incluir essas informações extras.
1
Em vez de comentar, você deve usar o editbotão para adicionar essas ótimas adições à sua resposta.
Marco Ceppi
Feito! Da próxima vez vou usar o laptop.
0

O que eu faria é colocar os arquivos que você não deseja excluir em uma pasta antes de executar esses comandos, se houver menos deles do que você deseja se livrar. Mas, em última análise, uma combinação de curingas ("*" e "?") E instruções de definição faria o trabalho facilmente. Depende apenas dos arquivos que você deseja manter ou se livrar.

Já tentou arrastar os arquivos para excluir na janela do aplicativo do terminal? Pode clonar o diretório e o estilo do caminho do nome do arquivo para você. No entanto, se você estiver excluindo apenas 2 ou 3 arquivos, espero que seja apenas para fins de aprendizado; caso contrário, digite os caminhos e o nome do arquivo manualmente usando o "TAB" no meu teclado, ele deverá preencher automaticamente os nomes de arquivo fornecidos no diretório diretório atual que começa com o que você já digitou.

R4GN4R
fonte
0

A conclusão da guia é o caminho . É ativado bashno Ubuntu por padrão. Funciona assim:

$ rm bl<tab>

será automaticamente alterado para

$ rm blabla.mp3

Se o nome do arquivo for ambíguo, você precisará pressionar tabmais uma vez para ver uma lista dos possíveis nomes de arquivos:

$ rm b<tab><tab>
blabla.mp3  b.mp3

Isso também funciona para uma série de outros comandos, como apt-get, servicee assim por diante.

Se você está interessado em uma conclusão de guia ainda mais sofisticada, confira zshcom a configuração do Grml , é impressionante .

kraxor
fonte