GNU/Linux >> Linux Esercitazione >  >> Ubuntu

È possibile escludere alcuni file da Rm -rf??

Questa domanda ha già risposte qui :Eliminare tutti i file tranne i file/le cartelle specificati utilizzando la riga di comando?

(2 risposte)
Come eliminare tutti i file tranne un file denominato da una cartella specifica [duplicare]

(5 risposte)
Chiuso 2 anni fa.

Ho una directory che viene riempita da un altro utente e ho il compito di mantenerla. Voglio eliminare tutto il suo contenuto tranne 2 file con un nome specifico. È possibile con rm o dovrei farlo:

cp aaa/a ./a && cp aaa/b ./b && rm -rf aaa/* && mv ./a aaa/a && mv ./b aaa/b

dove aaa è la directory, a,b sono i file che voglio conservare e ci sono (almeno, potrebbero esserci) altri file/directory lì dentro.

C'è un modo migliore (e più breve)?

Risposta accettata:

Con bash glob estesi, dato

$ tree aaa
aaa
├── a
├── b
├── c
├── d
├── e
└── subdir

poi

rm -rf aaa/!(a|b)

lascia

$ tree aaa
aaa
├── a
└── b

0 directories, 2 files

Ubuntu
  1. Recupero di file cancellati accidentalmente?

  2. Come escludere alcuni file dal meccanismo di espansione del nome file in Bash?

  3. Escludere tutti i file di sottolineatura punto da Rsync?

  4. Reposync esclude i sottotitoli dal mirror?

  5. Come accedere ai file Flash da siti Web in streaming?

Come escludere file di determinate dimensioni dalla copia in Linux

Non riesci a trasferire file da casa a USB?

Come copiare file da Wine a desktop?

Come accedere ai file di Windows da Ubuntu?

Escludi elenco di file da find

Escludi un alias da virtualhost proxypass