Suponha que eu queira excluir todos os arquivos em uma pasta com mais de 1 MB.
$ find . -size +1M | xargs -0 rm
Isso não excluirá os arquivos que possuem espaço em seus nomes. Então, eu quero que cite todos os argumentos para os quais envia rm. Se findder, Some report.docxdeve passar "Some report.docx"para rm.
Como eu posso fazer isso?
De maneira mais geral, consulte Por que meu script de shell é bloqueado em espaço em branco ou em outros caracteres especiais?
—
Gilles 'SO- stop be evil'
Use
—
imz - Ivan Zakharyaschev
xargs -d$'\n'para limitar o delimitador apenas a novas linhas (e não a espaços; isso não processará aspas etc., especialmente - verifiquei em um sistema GNU) - a resposta dada em stackoverflow.com/a/33528111/94687
xargs. Também como o wiki sugere, não usexargssem passar-print0parafind.