GNU/Linux >> Linux Esercitazione >  >> Linux

Debian:eliminazione di migliaia di file

L'eliminazione della directory dovrebbe funzionare. Potresti incorrere in problemi se stai tentando di eliminare singoli file perché ce ne sono così tanti. Non stai eseguendo rm -rf dirname/* sei tu?

La mia ipotesi è che tu stia perdendo la connessione ssh a causa dell'inattività, sei sicuro che il comando non sia stato eseguito correttamente sul server?

In ogni caso, una possibile soluzione sarebbe usare nohup:

nohup rm -rf dirname

Puoi avviare il comando e disconnetterti, continuerà in background.

AGGIORNAMENTO:

Ho trovato questa domanda su U&L.SE, ti consiglio di dargli un'occhiata. Sfortunatamente, non posso ricreare il tuo problema. Ho creato una directory con 2516007 file e potrei sempre eliminarla usando rm -rf :

$ mkdir ha
$ for X in $(seq 1 10000);do touch {1..10000}_$X; done
$ ls -f ha | wc -l 
  2516007     <= I stopped before the for loop finished, but this should be enough
$ time rm -rf ha/
  real  23m11.695s
  user  0m3.540s
  sys           0m42.891s

Quindi, ci sono voluti 20 minuti per eliminare circa 2 milioni di file vuoti. Sembra ragionevole che potrebbero essere necessarie ore per eliminare un'enorme quantità di file non vuoti.

Ad ogni modo, alcuni dei suggerimenti della domanda U&L dovrebbero aiutare. Nello specifico questo:

find /delb -type f  --delete

o questo (leggermente modificato rispetto all'originale)

find /delb -type f -print0 | xargs -0r rm -f

Infine, un trucco che potresti fare è eliminare alcuni file alla volta. Se sai che alcuni nomi di file iniziano con la stringa "foo", altri "bar" ecc., fai questo:

rm -rf /delb/foo*
rm -rf /delb/bar*

e così via. Potresti anche provare qualcosa del genere:

for n in {a..z}; do rm -rf /delb/$n*; done
for n in {A..Z}; do rm -rf /delb/$n*; done
for n in {0..9}; do rm -rf /delb/$n*; done

Quest'ultimo comando eliminerà in sequenza ogni nome di file che inizia con ogni lettera dell'alfabeto, quindi qualsiasi nome di file che inizia con numeri.


Linux
  1. Linux:eliminare in modo efficiente una directory di grandi dimensioni contenente migliaia di file?

  2. Come spostare 100 file da una cartella che ne contiene migliaia?

  3. File 7zip:come decomprimere i file 7z su Ubuntu, Debian, Fedora

  4. gzip tutti i file senza eliminarli

  5. Eliminazione corretta di file più vecchi di 30 giorni

Come trovare file in Debian 10

Come manipolare file su Debian 11

5 modi per liberare spazio su disco su Debian 10

Come guardare o monitorare i file di registro in Debian 10

Come trovare file in Debian

Come eliminare in modo sicuro i file utilizzando il comando Shred in Debian 11