GNU/Linux >> Tutoriales Linux >  >> Linux

bash:elimina todos los directorios (y contenidos) pero no los archivos en pwd

Encontré este en alguna parte:

rm -r */

Parece la forma más fácil de hacerlo. Con su ejemplo, tendría que confirmar cada caso, si tiene 5 archivos, está bien, pero con estructuras de archivos más grandes, un modo interactivo no es el camino a seguir ... Solo como sugerencia, si es información importante, haga una copia de seguridad...


No, eso le daría un "operando faltante" ya que no especificó nada. Poniendo un * solicitaría también archivos.

Intentaría:

find -mindepth 1 -maxdepth 1 -type d -exec rm -r {} \;

El mindepth 1 excluirá . de los resultados, el maxdepth 1 excluirá intentar hacerlo en los directorios que de todos modos se eliminarán (por lo tanto, se creará una advertencia). Pero, en la práctica, podría omitirlos a ambos si acepta tener algunas advertencias "inocentes".


Usar

rm -rf ./*/

Eso evita el modo interactivo y elimina solo directorios en su directorio local.


Linux
  1. ¿Compara directorios pero no contenido de archivos?

  2. Obtener todos los archivos excepto los archivos en matriz:¿Bash?

  3. Cómo eliminar archivos y directorios en la línea de comandos de Linux [Tutorial para principiantes]

  4. Linux Eliminar archivos y directorios

  5. Cómo enumerar recursivamente todos los archivos y directorios

Cómo eliminar directorios y archivos usando Linux

Cómo eliminar archivos y directorios usando la línea de comandos de Linux

Cómo eliminar archivos y directorios en Linux

Cómo eliminar archivos y directorios en la terminal de Linux

¿Eliminar todos los archivos/directorios excepto un archivo?

Cómo realizar una búsqueda Grep en todos los archivos y en todos los directorios