Предположим, что я хочу удалить все файлы в папке, размер которых превышает 1 МБ.
$ find . -size +1M | xargs -0 rm
Это не приведет к удалению файлов с пробелами в их именах. Поэтому я хочу привести все аргументы, которые он посылает rm
. Если find
дает, то Some report.docx
должен перейти "Some report.docx"
к rm
.
Как я могу это сделать?
Используйте
—
imz - Иван
xargs -d$'\n'
для ограничения разделителя только новыми строками (а не пробелами; это не будет обрабатывать кавычки и т. Д., Особенно - я проверял систему GNU) - ответ дан в stackoverflow.com/a/33528111/94687
xargs
. Кроме того, как следует из вики, не следует использоватьxargs
без прохождения-print0
кfind
.