Isso parece-me um problema geral em fazer coisas com arquivos em uma lista ... aqui a lista é criada com argumentos específicos para find
(para encontrar os arquivos vinculados / dupe).
Eu pularia a agonia do uso direto de xargs
em todos os arquivos que seu find
cria ...
Em vez disso, eu criaria os comandos com find -printf
e verificaria o que é produzido completamente e ENTÃO canalize-o para o bash com um anexo
| bash
E lembre-se de que nomes de arquivos podem conter caracteres especiais; um espaço simples é um criador de problemas. Então, para começar, cite os nomes, sempre.
Exemplo, com um conjunto limitado de arquivos ( -maxdepth
):
find -maxdepth 1 -type f -printf 'file="%p"; echo $file ; rm "$file" \n'
... é um começo, para entender o que eu quero dizer acima ... e quando você termina, quando o resultado é o que você realmente espera - então escolha
find -maxdepth 1 -type f -printf 'file="%p"; echo $file ; rm "$file" \n' | bash
echo "echo 'test'" | bash
imprime test
, um caminho complexo para um eco simples, mas pode mostrar a ideia por trás do que está acima.