Que tal:
cd ~/Downloads && rm -rf */*
Ou estou faltando alguma coisa?
Observação: isso não excluirá arquivos / diretórios ocultos imediatamente abaixo do nível superior.
Estou usando o programa hazel para arrumar minha pasta de downloads toda vez que um arquivo é baixado. Agora estou dizendo a ele para executar um script de shell, toda semana, para excluir todas as pastas da minha pasta de downloads e, em seguida, recriá-las.
Existe uma maneira mais fácil de fazer isso (excluindo pastas / recriando pastas) reiterando todas as pastas da minha pasta Downloads e excluindo seu conteúdo?
cd ~/Downloads;
rm -rf Archives;
rm -rf DMGs;
rm -rf Documents;
rm -rf Fonts;
rm -rf Mail\ Attachments;
rm -rf Mobile\ Provisioning;
rm -rf Music;
rm -rf Photoshop;
rm -rf Pictures;
rm -rf Videos;
mkdir Archives;
mkdir DMGs;
mkdir Documents;
mkdir Archives;
mkdir Fonts;
mkdir Mobile\ Provisioning;
mkdir Mail\ Attachments;
mkdir Music;
mkdir Photoshop;
mkdir Pictures;
mkdir Videos;
Se você deseja excluir arquivos deixando a estrutura de pastas completa intacta, use
find . -type f -print -exec rm '{}' ';'
Se você só precisa da estrutura de pastas de nível superior intacta, rm -rf */*
como outros sugeriram é bom
Na verdade, é bem simples, isso faz: rm -rf */*
Você também pode executar:
find ~/Downloads -type f -exec rm {} \;
Isso excluirá todos os arquivos desse diretório.
Substitua rm {} \;
por ls -l {} \;
antes de executar para real para verificar se está tudo bem antes de excluir os arquivos.