Supposons que je souhaite supprimer tous les fichiers d'un dossier dont la taille est supérieure à 1 Mo.
$ find . -size +1M | xargs -0 rm
Cela ne supprimera pas les fichiers qui ont de l'espace dans leurs noms. Je veux donc qu'il cite tous les arguments qu'il envoie rm
. Si le find
donne, Some report.docx
il devrait passer "Some report.docx"
à rm
.
Comment puis je faire ça?
xargs -d$'\n'
pour limiter le délimiteur à seulement de nouvelles lignes (et non des espaces; cela ne traiterait pas spécialement les guillemets, etc. - j'ai vérifié sur un système GNU) - la réponse donnée dans stackoverflow.com/a/33528111/94687
xargs
. Aussi comme le suggère le wiki, n'utilisez pasxargs
sans passer-print0
àfind
.