Tengo un archivo lleno de rutas de archivo relativas a su propia ruta:
./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 ...
¿Cuál sería el comando de shell apropiado para revisar cada línea de este archivo y eliminarlo?
Respuesta1
xargs -d '\n' rm < listoffiles.txt
Respuesta2
xargs -I{} --arg-file=file rm "{}"
o
xargs -I{} -a file rm "{}"
Las comillas protegen los nombres de archivos con espacios.
Respuesta3
Si estás en un shell Bash puedes hacer:
find ./Talent/*/Resume/* -exec rm {} \;
o si desea eliminar los archivos con más de 7 días, puede agregar el parámetro -mtime como este:
find ./Talent/*/Resume/* -mtime +7 -exec rm {} \;