Come posso svuotare il cestino usando il terminale?


241

Non riesco a cercare spazzatura da nessuna parte. Potete per favore dirmi un comando o qualcosa del genere per svuotare il cestino usando il terminale?


2
Questo è stato pubblicato 3 anni fa. Abbiamo bisogno di qualcosa che lo spieghi, inclusa la versione per cui funziona qui nel 2017
SDsolar,

Risposte:


313

Puoi usare il comando ˋrmˋ:

 rm -rf ~/.local/share/Trash/*

Il comando rm rimuove (elimina) file o directory.

-f, --force     Ignore nonexistant files, and never prompt before removing.
-r, -R, --recursive     Remove directories and their contents recursively.

La cartella cestino si trova in: $HOME/.local/share/Trash

Fai attenzione a come usi il rmcomando: i file non vengono inviati a un cestino in cui è possibile ripristinarli, quindi non è facile annullarli.


10
Questo non funzionerà se la spazzatura è da qualche altra parte.
Braiam,

1
@ hellodear2 Nota che ~è solo una cosa specifica della shell, che si espande nel percorso della tua home directory. Usando, ad esempio "~/some/path", non si espanderà a causa del preventivo. Allo stesso modo, non tutti i file manager capiranno ~se lo inserisci nella barra degli indirizzi.
Ruslan,

11
Le cartelle e i file di sistema sensibili non possono essere rimossi senza privilegi e rmnon possono affatto rimuovere le cartelle, a meno che tu non gli dia l' -ropzione (o equivalente). Tuttavia, l'utilizzo rmsenza cura adeguata può causare la perdita di file personali importanti , specialmente se utilizzato con argomenti jolly.
Marc van Leeuwen,

1
@ hellodear2 vedi questo e questo domande per esempi quando tilde non sembra funzionare (si tratta di bash però). Non so davvero quali shell specifiche non lo supportano, ma dovresti capire che tilde è implementata non a livello di file system, ma a livello di applicazione. XFE è un esempio di file manager che non comprende ~nella barra degli indirizzi.
Ruslan,

4
perché questo è apparentemente ca. 100 volte più veloce del clic sul cestino "vuoto" in qualsiasi browser di file?
phil294

131

Con trash-cliinstallato, puoi farlo

trash-empty

dettagli più interessanti sulla gestione dei rifiuti: qui


6
Ciò non funzionerà immediatamente e richiede l'installazione di trash-cli .
Skarz,

19
Sì, ma è la risposta corretta. Se hai una chiavetta USB, ad esempio, i file in cui ti trovi verranno inseriti in una directory nascosta nella radice del dispositivo (almeno è accaduta l'ultima volta che ho controllato) .Trash-$UID- quindi in questo caso il cestino è fisicamente in due posti diversi ...
Rmano,

Così triste che devi installare un pacchetto solo per svuotare il cestino. Contare il cestino sullo spazio su disco è una delle funzionalità più fastidiose di Ubuntu.
Michael,

3
@Michael "Cestino" è una funzionalità fornita dal desktop manager, che è un livello sopra le cose che normalmente useresti nella riga di comando. In realtà tutto ciò che fa è spostare i file in una cartella nascosta sullo stesso dispositivo e archiviare alcuni metadati in modo che possano essere rimessi a posto se l'utente lo desidera. In realtà non si recupera alcuno spazio finché non si "svuota" il cestino, ovvero quando il file viene effettivamente eliminato.
Seamus Connor,

3
Va notato che questo comando è specifico dell'utente. L'ho installato e mi grattavo la testa sul perché non funzionasse fino a quando mi sono reso conto che i file erano nel cestino di un altro utente.
Billynoah,

52

Stai cercando la $XDG_DATA_HOME/Trashdirectory. La directory cestino è definita nella "Specifica del cestino del desktop" del sito freedesktop . Questa variabile non è normalmente disponibile nelle finestre del terminale, quindi è necessario trash-empty. Questo comando segue tutte le specifiche di Freedesktop.org ed è abbastanza intelligente da scoprire dove si trova il Cestino. Dovrai prima installarlo.

Ci sono altri strumenti per questo, come i gvfs-trash --emptyquali possono anche inviare elementi nel cestino.


+1 per $XDG_DATA_HOME. Come l'hai avuto?
Jobin

4
@Jobin è tutto nelle specifiche. ramendik.ru/docs/trashspec.html
Braiam,

@Braiam Puoi per favore approfondire di più? Come posso usarlo? Non capisco come risolva il mio scopo. Per favore, spiega un po '. E non voglio cestinare gli oggetti, voglio svuotare i rifiuti.
hellodear

2
@ hellodear2 trash-empty svuota la spazzatura . Hai solo bisogno di eseguirlo. Il binario è nel trash-clipacchetto. È la stessa soluzione di Jhort solo che spiego da dove viene e offro un altro strumento.
Braiam,

Ora gio trash --empty, almeno su Ubuntu 18.10 / Gnome 3.
JB Rainsberger,


1

Ho avuto problemi con

rm -rf ~/.local/share/Trash/*

Quindi ho dovuto fare:

sudo -s
cd ~/.local/share/Trash/  

Prima di digitare il comando successivo, assicurati di essere nella directory corretta, perché puoi eliminare facilmente tutto nella cartella home in questo modo e non ci saranno avvisi.

rm -fr *

E poi tutto era sparito ...


Perché sudo e perché rm -rf. Non è necessario
mikewhatever,

1
@mikewhatever - Perché sudo? Dato che avevo cancellato qualcosa come superutente, e quindi per svuotare il Trash, ho dovuto fare sudoper avere quel privilegio. sudo rm -rf /fullabsolutepathFunziona semplicemente con un comando.
Harvey,

trash-empty e rm -rf ~ / .local / share / Trash / * non funzionano se si elimina dalle cartelle principali. La risposta di Cisum ha funzionato meglio per me.
Rainer

che cos'è? Ho provato questo e tutto era sparito. Tutti i dati sono andati dal mio sistema.
Rajneesh071,

2
Mi chiedo chi abbia votato questo? Questo è un terribile consiglio / set di comandi e molto pericoloso se alcuni eseguono i las rm -fr *nella cartella sbagliata. Modifica la tua risposta e utilizza almeno i percorsi completi ...
Tanasis,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.