Leí hace algún tiempo (no puedo encontrar la referencia) que usar un alias tan alias rm="rm -i"
malo.
¿Existe evidencia histórica o explicación de sentido común para ese hecho?
Me imagino que le da al usuario la mala costumbre de confiar en el aviso de confirmación para verificar su comando, lo que podría provocar desastres si lo hace en otro perfil que no tiene el alias.
Respuestas:
Tienes razón.
Es malo porque te acostumbras. Si está en un sistema que no lo tiene, y usted
rm
, inmediatamente comienza a eliminarse y se pregunta qué está pasando.Muchos usuarios están acostumbrados a SSH en diferentes sistemas; por lo tanto, es bastante común usar muchos sistemas diferentes, a veces sin cuentas de usuario personalizadas (incluidos los alias).
En su lugar, use eg
alias rmi='rm -i'
y aprenda a usar ese. Si eso no está configurado en un sistema diferente, no eliminó accidentalmente archivos y siempre puede recurrir a escribir el comando completo.fuente
Como dijo @Daniel, no es dañino en sí mismo, aparte de entrenarlo para que espere que esté allí. De hecho, es la configuración predeterminada en CentOS (y, por extensión, RHEL, supongo, ha pasado demasiado tiempo desde que usé una), y es un dolor enorme en el tuchus . Durante el resto de mi tiempo en ese concierto, escribí / bin / rm para evitar la configuración "Linux para personas que no deberían tener acceso de root".
fuente
Creo que el gran peligro es que las personas puedan confiar en algo como esto para filtrar un globo. Imagine que desea eliminar algunas imágenes de un directorio, pero no todas:
Podrías usar eso para filtrar el globo manualmente, lo cual sería completamente razonable. Pero, si lo aliaste y lo estabas usando
rm
y aterrizaste en un caparazón sin ese alias y lo intentaste ... simplemente borraste todas tus fotos, ¡Uy!Personalmente, también considero que este alias es perjudicial para mi presión arterial;). Pero solo soy yo.
fuente
Además de lo que dijo Daniel Beck, me encontré usando
-f
para evitar el-i
, que es potencialmente peligroso ya que resulta en el usorm -f
erm -rf
innecesariamente. De alguna manera relacionado: una forma de prevenirrm -rf
problemas es crear un archivo llamado "-i" como se dice en respuesta a esta pregunta: ¿Cómo puedo prevenir rm -rf / * accidental? .Pero de nuevo, si ese alias no estuviera allí, no usaría -f, y todo esto no será un problema.
fuente
Esto es mucho menos dañino, según mi experiencia trabajando con cientos de usuarios en el pasado:
rm
en algún otro contexto que carecía de esta función o delrm -i
alias.rm
está intacto, dejando otros programas sin desanimarse.El estilo del código es en su mayoría compatible con sh (excepto el uso
echo .... | tr -d '\012'
para shells previos al bash), siéntase libre de hacer su propio más específico para bash. No estoy publicando para compartir el código en sí, sino para compartir el cambio de experiencia del usuario que viene con él.fuente
rm -i
históricamente (en mi experiencia con tener cientos de usuarios) da como resultado la eliminación errónea de archivos, y que la función incluida ha capacitado a los usuarios para usar comodines correctos, reduciendo la tasa de error. Por lo tanto, he abordado problemas claverm -i
y proporcioné una solución por conveniencia, y el simple hecho de que las viñetas estén debajo de la función no evita que sean relevantes.