GNU/Linux >> LINUX-Kenntnisse >  >> Linux

„rm“ in den Papierkorb verschieben?

Gibt es ein Linux-Skript / eine Anwendung, die Dateien nicht löscht, sondern an einen speziellen „Papierkorb“-Speicherort verschiebt? Ich möchte dies als Ersatz für rm (vielleicht sogar als Alias ​​für Letzteres; dafür gibt es Vor- und Nachteile).

Mit „Papierkorb“ meine ich einen speziellen Ordner. Ein einzelnes mv $* ~/.trash ist ein erster Schritt, aber idealerweise sollte dies auch das Löschen mehrerer Dateien mit demselben Namen handhaben, ohne ältere gelöschte Dateien zu überschreiben, und eine Wiederherstellung ermöglichen Dateien mit einem einfachen Befehl (eine Art „Rückgängig machen“) an ihren ursprünglichen Speicherort. Außerdem wäre es schön, wenn der Papierkorb beim Neustart automatisch geleert würde (oder ein ähnlicher Mechanismus, um endloses Wachstum zu verhindern).

Dafür gibt es Teillösungen, aber insbesondere die Aktion „Wiederherstellen“ ist nicht trivial. Gibt es hierfür Lösungen, die nicht auf ein Papierkorbsystem einer grafischen Shell angewiesen sind?

(Nebenbei bemerkt gab es endlose Diskussionen darüber, ob dieser Ansatz gerechtfertigt ist, anstatt häufige Backups und VCS zu verwenden. Obwohl diese Diskussionen einen Sinn haben, glaube ich, dass es immer noch eine Nische für meine Anfrage gibt.)

Akzeptierte Antwort:

Es gibt eine Spezifikation (Entwurf) für Trash auf freedesktop.org. Es ist anscheinend das, was normalerweise von Desktop-Umgebungen implementiert wird.

Eine Kommandozeilen-Implementierung wäre trash-cli. Ohne genauer hingesehen zu haben, scheint es die gewünschte Funktionalität zu bieten. Wenn nicht, teilen Sie uns mit, inwieweit dies nur eine Teillösung ist.

Was die Verwendung eines beliebigen Programms als Ersatz/Alias ​​für rm angeht besorgt ist, gibt es gute Gründe, dies nicht zu tun. Am wichtigsten sind für mich:

  • Das Programm müsste den gesamten rm verstehen/verarbeiten Optionen und handeln Sie entsprechend
  • Es besteht die Gefahr, dass Sie sich an die Semantik Ihrer „neuen rm“ gewöhnen und Befehle mit fatalen Folgen ausführen, wenn Sie auf fremden Systemen arbeiten

Linux
  1. 5 Möglichkeiten, den Move-Befehl unter Linux zu verwenden

  2. Dateien nach Alter löschen?

  3. Skripting von `rm` und `rm -i`?

  4. Wohin gehen Dateien, wenn der Rm-Befehl ausgegeben wird?

  5. Linux – Langsame Medien – Festplatten-Cache-Tuning?

Verschieben Sie Dateien im Linux-Terminal

So verschieben Sie Dateien und Verzeichnisse in Linux (mv-Befehl)

So verschieben Sie eine große Anzahl von Dateien in Linux

Dateien durch Lesen ihrer Dateinamen in verschiedene Verzeichnisse verschieben?

.o-Dateien vs. .a-Dateien

Eine Reihe von nummerierten Dateien verschieben?