Quiero crear un script que siempre que se eliminen más de tres archivos, invoque rm -i
por defecto. Sé que irá en los archivos de inicialización, pero parece que no puede hacerlo funcionar.
Hasta ahora:
if [$file -ge 3]; then
rm -i
exit 0
else
rm
exit 1
Respuesta aceptada:
La función dada en la respuesta de @Tim funcionará en cualquier sistema que ejecute bash. Sin embargo, GNU rm
ya tiene una opción para lo que necesitas (de man rm
):
-I prompt once before removing more than three
files, or when removing recursively. Less
intrusive than -i, while still giving protec‐
tion against most mistakes
Entonces, si tiene GNU rm
(que debería hacer si está ejecutando Linux) todo lo que necesita es agregar esta línea a su /.bashrc
:
alias rm='rm -I'
Esto le preguntará antes de eliminar más de 3 archivos, pero no pedirá confirmación para cada archivo, si confirma la acción, se eliminarán todos los archivos.