bash – En linux, ¿cómo eliminar todos los archivos EXCEPTO el patrón * .txt?

Pregunta:

Sé cómo eliminar todos los archivos txt en el directorio actual mediante rm *.txt . ¿Alguien sabe cómo eliminar todos los archivos en el directorio actual EXCEPTO el archivo txt ?

Respuesta:

Puede usar find :

find . -type f ! -name '*.txt' -delete

O las funciones de globbing extendidas de bash:

shopt -s extglob
rm *.!(txt)

O en zsh:

setopt extendedglob
rm *~*.txt(.)
#  ||     ^^^ Only plain files
#  ||^^^^^ files ending in ".txt"
#  | \Except
#   \Everything

Leave a Comment

Your email address will not be published.

Scroll to Top

istanbul avukat

-

web tasarım