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


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

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


1


origem




Respostas:


Provavelmente é possível fazer apenas com bash, mas há realmente possivelmente uma opção melhor para fazê-lo 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 testá-lo primeiro (fortemente recomendado), tente algo como isto:

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

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

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

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


4



Obrigado, uma resposta muito completa! Eu usei o mesmo comando para apagar também todo o arquivo AlbumArt * na árvore, quase inútil em um ambiente linux. - Alfa Taurus
@AlfaTaurus Fico feliz em poder ajudar. Bem-vindo ao SuperUser e ao Stack Exchange. - Michael Kjörling