Para algo un poco más elegante que responder sí o no a cada archivo, puede usarlo iselect
para una selección interactiva basada en ncurses. p.ej
iselect -a -m < list.txt | xargs -d '\n' -r echo rm
o para permitir la selección de archivos en el directorio actual:
find . -maxdepth 1 -type f | iselect -a -m | xargs -d '\n' -r echo rm
Eso mostrará una lista basada en ncurses en pantalla completa (terminal completa), donde los archivos se pueden seleccionar y deseleccionar a voluntad presionando la barra espaciadora. presione ENTRAR para aceptar sus selecciones (las entradas seleccionadas se imprimirán en stdout) o q
para salir (nada impreso en stdout). Presione h
para obtener ayuda.
Tenga en cuenta que lo echo rm
he escrito así para probar. cámbielo a solo rm
una vez que esté seguro de comprender lo que está haciendo.
También tenga en cuenta que xargs
se está utilizando aquí \n
como separador de entrada. Esto no funcionará si alguno de los nombres de archivo tiene caracteres de salto de línea. Por lo demás, iselect
tampoco funcionará correctamente (espera un elemento por línea). Desafortunadamente, iselect
no tiene una opción para entrada o salida con terminación nula.
iselect
está empaquetado para debian, probablemente ubuntu y otras distribuciones también. La página de inicio está en http://www.ossp.org/pkg/tool/iselect/
y
, ¿el archivo anterior se habría eliminado?