Como menciona @Stephen Kitt, isso é basicamente uma duplicata de find -delete não exclui diretórios não vazios , o que indica que você está dizendo para excluir diretórios, mas os diretórios não estão vazios (assim como executar rm some_nonempty_directory
não funciona sem o sinalizador -r no mínimo).
Dito isso, se você substituir -delete
por -exec rm -rv {} +
ou -exec rm -rv {} \;
, seu script deverá excluir o diretório recursivamente sem erro (remova o v
flag se não desejar saída detalhada após o teste).
Observação: o +
no final resultará em rm -rv file1 file2 ...
, enquanto a ação de \;
será rm -rv file1; rm -rv file2; ...