como encontrar e excluir pasta com um certo com encontrar

-1

Eu tenho uma unidade com backups diários (duas vezes por dia) e preciso excluir uma pasta em cada backup, que é bastante profunda em uma estrutura de pastas.

/mnt/backup/backup/[yymmdd_hhmm/backup-clients/[username]/

sudo find /mnt/backup/backup/ -type d -name [username] | rm -r faria esse trabalho?

    
por vrms 07.05.2018 / 02:35

1 resposta

2

Você deseja usar a opção -exec do find, -exec rm -r {} + . O + no final agrupa os argumentos em lotes maiores, o que significa que não haverá um processo rm separado para cada resultado, mas eles serão agrupados em partes maiores, resultando em menor uso da CPU.

Primeiro, execute o find sem o -exec , para que você possa garantir rapidamente que os argumentos que serão passados para rm -r estejam corretos:

find /mnt/backup/backup/ -name "[username]" -type d

Se tudo parece bem, vá em frente:

find /mnt/backup/backup/ -name "[username]" -type d -exec rm -r {} +
    
por hydrandt 07.05.2018 / 03:52