Angenommen, ich möchte alle Dateien in einem Ordner löschen, die größer als 1 MB sind.
$ find . -size +1M | xargs -0 rm
Dadurch werden keine Dateien gelöscht, deren Namen Leerzeichen enthalten. Ich möchte, dass es alle Argumente zitiert, an die es sendet rm. Wenn findes gibt Some report.docxsollte es passieren "Some report.docx"zu rm.
Wie kann ich das machen?
xargs -d$'\n'das Trennzeichen , um nur neue Zeilen zu begrenzen (und keine Leerzeichen, dies würde nicht Anführungszeichen usw. verarbeitet speziell - ich auf einem GNU - System überprüft habe) - die Antwort in bestimmten stackoverflow.com/a/33528111/94687
xargs. Auch als das Wiki schlägt vor, verwenden Sie nichtxargsohne Umweg-print0zufind.