Digamos que quería asegurarme de que primero estoy eliminando los archivos correctos, así que hice algo como:
rm -i *
solo para asegurarme de que estoy de acuerdo con los archivos que estoy eliminando. Entonces esto me preguntará por cada archivo. Después de algunos archivos, supongamos que me doy cuenta de que es exactamente lo que quería eliminar. En lugar de CTRL+Chacer y simplemente hacer rm *, ¿hay alguna forma en que pueda decir Sí a todos ?
Esta pregunta proviene más de la curiosidad que de la funcionalidad.

Respuestas:
No.
(A menos que encuentre una manera de voltear el bit 'interactivo' con un depurador).
fuente
coreutils/src/remove.c:335→coreutils/lib/yesno.c:46(generado) →rpmatch(3): "devuelve 0 para una respuesta negativa reconocida (" no "), 1 para una respuesta positiva reconocida (" sí ") y -1 cuando el valor de la respuesta no se reconoce"Bueno, esto realmente no responde a tu pregunta. Pero en lugar de usar
rm -i, considere usar aliasrmpararm -I:La página del manual dice:
en tu
~/.bashrc, pon:¡Esto es realmente útil!
fuente
La respuesta es sí, usando este código:
$ yes "yes" | rm -vRI directoryfuente
Solo verifique primero usando
ls *.blay luegorm -f *.blatal vez?¡Con precaución!
fuente
Si está ejecutando en pantalla (una buena idea en general), puede hacer:
Esto haría que la pantalla ejecutara el comando 'yes' con y siendo la salida, y dirija dicha salida al programa en ejecución (rm -i).
fuente
Esto se puede hacer reemplazando los descriptores de los archivos de la aplicación sobre la marcha. Sin embargo, necesitará un archivo intermedio.
Puede usar gdb y una tubería con nombre como esta (suponiendo que esté usando más terminales, de lo contrario, debe usar la pantalla o algo más):
Luego escriba los siguientes comandos en gdb, reemplazando el PID
Esto reemplaza el teclado con una tubería con nombre para rm.
Ahora tienes que llenar la tubería nombrada
rm leerá la tubería y sobrescribirá todo.
fuente
rmproceso en segundo plano conCtrl+Z.rm -i *comando)-iEnterejecutar el comandofg %1Ctrl+Cfuente
5s/fg/kill/; 6d