rmw: Papierkorb für das Terminal

Di, 29. Juni 2021, Niklas

Wer kennt das Problem nicht? Man löscht eine Datei mit rm im Terminal, weil ls einem wieder mal das ganze Chaos offenbart hat und man der Meinung ist, diese Datei sowieso nicht mehr zu brauchen. Und später stellt man fest, dass man sie doch noch gebraucht hätte - Doch es gibt kein Zurück, der rm Befehl hat keinen Papierkorb.

Dieses Problem kann ReMove to Waste lösen. Das kleine Open-Source-Tool legt einen versteckten Waste Ordner im Home Verzeichnis des Nutzers an, in das alle "gelöschten" Dateien zunächst einmal verschoben werden, bevor sie nach Ablauf eines bestimmten Zeitraums oder manuellem Leeren des Papierkorbs endgültig entfernt werden.

Der rmw Befehl ist fast identisch zu rm: Mit rmw dateiname.txt wird eine Datei gelöscht, mit rmw -R ordner kann man einen Ordner rekursiv löschen. Daneben gibt es mit rmw --purge=[Anzahl Tage] die Möglichkeit, alte Dateien aus dem Papierkorb zu löschen. Mit rmw -e wird der Papierkorb komplett geleert und alle Dateien darin unwiderruflich gelöscht.

Mit rmw -z dateiname.txt kann eine Datei wiederhergestellt werden. Hier werden auch Wildcards wie rmw -z datei* unterstützt. Noch einfacher macht es rmw -s, das eine Liste der Dateien im Papierkorb anzeigt und ein Wiederherstellen von mehreren Dateien gleichzeitig durch Auswählen mit der Leertaste und Bestätigung mit Enter ermöglicht.

Um die zuletzt gelöschte Datei wiederherzustellen, kann man ganz bequem den Befehl rmw -u ohne weiteres Argument verwenden. Eine Liste der zuletzt gelöschten Dateien erhält man mit rmw -m. Das Tool setzt auf die FreeDesktop.org Trash Spezifikation, die auch von den grafischen Dateimanagern auf Linux verwendet wird. Es hat jedoch seinen eigenen Waste-Ordner, sodass mit rmw gelöschte Dateien nicht im grafischen Dateimanager sichtbar sind.

rmw ist ein sehr hilfreiches und einfach zu nutzendes Tool, das bei keinem Terminal-Poweruser fehlen darf. Es wurde in C geschrieben und steht unter der GNU GPL 3.0 Lizenz. Es ist sehr leichtgewichtig, seine einzige Abhängigkeit ist ncurses.

Nutzer von Arch Linux oder Manjaro können rmw aus dem AUR installieren, bei openSUSE Tumbleweed ist es sogar im offiziellen Repository enthalten. Auf macOS kann es aus Homebrew installiert werden. Nutzer anderer Distributionen können rmw aus dem Quellcode selbst kompilieren.

Quellen:

Frido
Geschrieben von Frido am 29. Juni 2021

Wirklich ein ganz nettes Tool, aber kann man nicht einfach ein Alias für mv erstellen, sodass man nichts zusätzlich installieren muss?

nipos
Geschrieben von nipos am 30. Juni 2021

Nein, weil man es dann nicht wiederherstellen kann. rmv behaelt den Speicherort. Und rmv kann den Papierkorb auch automatisch aufraeumen. Das Tool macht also viel mehr, als nur verschieben.