TRASH-CLI

Prullenbak voor de commandoregel

We kennen allemaal de Prullenbak / wastebasket / trash of hoe het betreffende besturingssysteem het ook noemt. En net zoals de andere besturingssystemen met een GUI1 heeft Linux dit ook.

Maar wat je misschien niet weet is dat er ook een prullenbak voor de commandoregel bestaat2. Hiermee kun je vanaf de commandoregel bestanden wissen, terugzetten of kijken welke bestanden er in de prullenbak zitten.

Installatie:

Op de meeste system zal trash-cli niet standaard geïnstalleerd zijn, hiervoor kun je best de "package manager" van jou distributie gebruiken.

Op mijn Debian system en op op Debian gebaseerde systemen zoals Ubuntu doe je dat met het volgende commando: sudo apt install trash-cli of sudo apt-get als je een oudere distributie hebt.

Gebruik:

Trash-cli is niet 1 programma dat je gebruikt, maar is een verzameling van de volgende programma's
  • trash-list : Toon alle bestanden in de prullenbak
  • trash-restore : Zet een programma terug naar de orginele plaats
  • trash-empty : Maak de prullenbak leeg
  • trash-rm : Verwijder een bestand uit de prullenbak
  • trash-put : Verwijder een bestand en plaats het in de prukkenbak

Enkele voorbeelden:

In het volgende voorbeeld gaan we de prullenbak gebruiken met een programma waarvan ik foutief de Windows® versie van gedownload heb, en aangezien ik geen Windows gebruik kan ik deze niet gebruiken.

Eerst gaan we kijken of er al bestanden in de prullenbak zitten:
Figuur 1. $ trash-list
$ trash-list
Er zitten nog geen bestanden in de prullenbak, dus laten we daar eens werk van maken:
Figuur 2. $ trash-put se_24000200_win64.msi
$ trash-put se_24000200_win64.msi

Het bestand $ trash-put se_24000200_win64.msi is nu in de prullenbak geplaatst. Dit kunnen we zien met trash-list welke nu aangeeft dat het bestand in de prullenbak zit, met daarbij de gegeven wanneer dit bestand in de prullenbak geplaatst is.

Ik heb ook nog een beta versie voor Linux van dit programma geïnstallerd en na installatie dit bestand ook in de prullenbak geplaatst, er zitten nu dus 2 bestanden in de prullenbak:
Figuur 3. $ trash-list
$ trash-list
Nu we 2 bestanden in de prullenbak hebben, kunnen we eens bekijken hoe we 1 bestand terug zetten (je kunt met trash-cli zogenaamde wildcards gebruiken om in 1 keer een reeks bestanden die aan een bepaalde voorwaarde voldoen te verwijderen of te herstellen).
Figuur 4. $ trash-restore /home/patrick/Tools/
$ trash-restore /home/patrick/Tools/

trash-restore vraagt welk bestand teruggezet moet worden, en als we hierna het ls commando rebruiken zien we dat dit bestand teruggeplaatst is.

Willen we echter een bestand verwijderen ipv herstellen gebruiken we trash-rm:
Figuur 4. $ trash-rm '*.msi'
$ trash-rm '*.msi'

Na het gebruiken van trash-rm met de "wildcard" *.msi bljift enkel tarball over in de prullenbak.

Tijd dus om de prullenbak helemaal leeg te maken met trash-empty:
Figuur 4. $ trash-empty'
$ trash-empty

Ziezo, vanaf nu kun je veilig bestanden wissen in de commandoregel zonder het risico te lopen dat je met rm de verkeerde bestanden wist.

Meer informatie is te vinden in de manpages of de infopages.

1 Graphical User Interface
2 Deze werkt echter niet met het rm commando, dus bestanden die je met rm wist kun je niet terughalen uit de prullenbak