¿rm -rf *.*
dañará su sistema de archivos mientras que rm -rf /
no funcionará? esto?
Comentarios
- Unix y Linux Stack Exchange ha sido útil durante más de 6 años, y SuperUser por lo mismo: unix.stackexchange.com/questions/19547 superuser.com/questions/312769 unix.stackexchange.com/questions/302468
Responder
Ahí «No tiene nada de especial, rm -rf *.*
es un comando con un comodín de nombre de archivo, eliminará recursivamente todos los archivos en el directorio actual que contengan un punto en sus nombres.
rm -rf /
daría un error al intentar ejecutar rm
en el directorio raíz. Esto es un mandato de POSIX :
Si […] un operando reso Si va al directorio raíz, rm escribirá un mensaje de diagnóstico para error estándar y no hará nada más con tales operandos.
Dependiendo en el shell y su configuración, *.*
también puede coincidir con ..
para el directorio principal, pero también con /
, intentar eliminar eso también es un error.
Ninguno de los dos dañará el sistema de archivos, rm
solo (intentará) eliminar archivos utilizando las llamadas habituales al sistema de archivos. El efecto en el sistema en general, o en los archivos del usuario, por supuesto, puede ser sustancial si el primer comando se ejecuta en un directorio que contiene archivos importantes.
Comentarios
- para versiones suficientemente nuevas de GNU
rm
(característica originalmente robada de Solaris IIRC). Es mejor no llorar si surm
no es compatible con la última versión de POSIX.