Usando o Bash, como posso excluir todo o desktop.ini na árvore de pastas da unidade externa?

1

Estou usando meu disco rígido externo para armazenar minhas músicas e agora instalei o Linux no meu PC.

Eu gostaria de apagar todos os arquivos desktop.ini nas mil pastas aninhadas no disco rígido, como posso fazer isso usando apenas o bash?

    
por Alfa Taurus 13.05.2014 / 15:13

1 resposta

4

Provavelmente é possível fazer apenas bash, mas na verdade existe uma opção melhor para fazer isso usando find .

Supondo que você tenha permissão de escrita para os diretórios em questão, seria tão simples quanto:

find /media/external-music-store -iname desktop.ini -delete

Para testar primeiro (recomendado), tente algo assim:

find /media/external-music-store -iname desktop.ini -print | less

que lhe dará uma lista rolável de todos os arquivos que ele excluiria. (Para sair de less , pressione q ; para rolar para cima e para baixo, use as teclas de seta.)

Tenho certeza de que find está incluído na instalação padrão com a maioria das distribuições Linux e, certamente, com a maioria das orientadas para desktop. O Debian empacota como findutils , que é um pacote essential e required .

O uso de -iname faz com que a correspondência insensível a maiúsculas e minúsculas no nome do arquivo corresponda à semântica do Windows. Sua contraparte -name usa correspondência de maiúsculas e minúsculas (que é o modo normal de operação em sistemas semelhantes ao Unix, incluindo Linux).

    
por 13.05.2014 / 15:18

Tags