xargs -d '\n' rm < listoffiles.txt
Eu tenho um arquivo cheio de caminhos de arquivos em relação ao seu próprio caminho:
./Talent/152/Resume/a file name.pdf
./Talent/153/Resume/some file name.pdf
./Talent/154/Resume/yet another file name.pdf
... and so on ...
Qual seria o comando shell apropriado para passar por cada linha neste arquivo e removê-lo?
xargs -I{} --arg-file=file rm "{}"
ou
xargs -I{} -a file rm "{}"
As citações protegem nomes de arquivos com espaços.
Se você está em um shell Bash, você pode fazer:
find ./Talent/*/Resume/* -exec rm {} \;
ou se você quiser excluir os arquivos com mais de 7 dias, você pode adicionar o parâmetro -mtime assim:
find ./Talent/*/Resume/* -mtime +7 -exec rm {} \;