Eu compartilhei sobre como remover todos os arquivos em um diretório exceto subpastas específicas no Bash, mas infelizmente este comando não funciona para o Zsh. Após alguns ajustes, consegui reproduzir o mesmo comportamento, que é remover tudo dentro de wp-content/plugins/
, exceto pastas começando com dk-
ou exatamente nomeadas auto-login
, e index.php
:
find wp-content/plugins/ -mindepth 1 -maxdepth 1 -type d ! -name 'dk-*' ! -name 'auto-login' ! -name 'index.php' -exec rm -rf {} +
BashVersão para testes
Aqui está a versão de testes que apenas listará o que seria excluído:
find wp-content/plugins/ -mindepth 1 -maxdepth 1 -type d ! -name 'dk-*' ! -name 'auto-login' ! -name 'index.php' -print
BashConfirmar Antes de Excluir
Você também pode confirmar manualmente a exclusão de cada item adicionando o parâmetro -ok
:
find wp-content/plugins/ -mindepth 1 -maxdepth 1 -type d ! -name 'dk-*' ! -name 'auto-login' ! -name 'index.php' -ok rm -rf {} \;
BashMover para a Lixeira
Uma abordagem mais segura seria mover os arquivos para a pasta de lixeira em vez de excluí-los permanentemente. Veja como fazer isso.
Linux
Estou usando a ferramenta trash-cli para isso.
find wp-content/plugins/ -mindepth 1 -maxdepth 1 -type d ! -name 'dk-*' ! -name 'auto-login' ! -name 'index.php' -exec trash-put {} +;
BashmacOS
find wp-content/plugins/ -mindepth 1 -maxdepth 1 -type d ! -name 'dk-*' ! -name 'auto-login' ! -name 'index.php' -exec trash {} +;
Bash🤖 Divulgação de Uso de Inteligência Artificial 🤖
- 📝 IA usada para: tradução (en_US para pt_BR);
- 🧠 Modelo: Claude 3.7 Sonnet;
- 🧐 Revisado por Humano: Sim.
Deixe um comentário