Algo que creo que debo saber con certeza: si lo hago ls <something>, ¿ rm <something>eliminaré exactamente los mismos archivos que se lsmuestran? ¿Hay alguna circunstancia en la que rmpueda eliminar archivos que lsno se muestran? (Esto es en la fiesta 18.04)
Editar: gracias a todos los que respondieron. Creo que la respuesta completa es una combinación de todas las respuestas, por lo que he aceptado la respuesta más votada como "la respuesta".
Cosas inesperadas que he aprendido en el camino:
lsno es tan sencillo como podría pensar en el manejo de sus argumentos- En una instalación simple y sin complicaciones de Ubuntu, los alias .bashrc
ls - ¡No asigne un nombre a sus archivos que comiencen con un guión, ya que pueden parecer argumentos de comando, y nombrar a uno -r lo solicita!
find -deletemejor que rm? Dices "Por eso" , pero no me queda completamente claro a qué se refiere. También tenga en cuenta que su findinvocación eliminará todos los archivos de forma recursiva en el directorio actual, donde rmsimplemente eliminará los archivos en el directorio inmediato. También -name *es un no-op. En general, estoy bastante perplejo por su consejo ...
findes porque puedes ejecutarlo, ver todos los archivos y luego ejecutar el mismo comando con -delete. Como ya vio los resultados find, no debería haber ambigüedad sobre lo que se eliminará (en realidad me gustaría escuchar más detalles sobre esto en forma de respuesta)
-delete" - Pero, ¿cómo es eso mejor que ejecutarlo ls <filespec>, seguido de rm <filespec>(que el OP ya sabe cómo hacerlo)?
find ... -printprimero para confirmar qué archivos se eliminarán, y luego find ... -delete, seguirá eliminando los archivos creados entre los dos comandos. Si usa ambos -printy -deleteno obtiene confirmación, solo un informe posterior al hecho de lo que se ha eliminado (y también podría usar rm -v).
rmno tenga una--dry-runbandera ...