简体中文
trash-cli entsorgt Dateien und zeichnet dabei den ursprünglichen Pfad, das Löschdatum und die Berechtigungen auf. Es verwendet denselben Papierkorb wie KDE, GNOME und XFCE, Sie können ihn jedoch über die Befehlszeile (und Skripts) aufrufen.
Es stellt folgende Befehle bereit:
Legen Sie Dateien und Verzeichnisse in den Papierkorb. trash-empty: Leeren Sie den/die Mülleimer. Trash-List listet gelöschte Dateien auf. trash-restore stellt eine im Papierkorb befindliche Datei wieder her. trash-rm entfernt einzelne Dateien aus dem Papierkorb.
Eine Datei in den Papierkorb werfen:
$ trash-put foo
Liste der gelöschten Dateien:
$ Papierkorbliste 2008-06-01 10:30:48 /home/andrea/bar 2008-06-02 21:50:41 /home/andrea/bar 23.06.2008 21:50:49 /home/andrea/foo
Suchen Sie im Papierkorb nach einer Datei:
$ Papierkorbliste | grep foo 2007-08-30 12:36:00 /home/andrea/foo 2007-08-30 12:39:41 /home/andrea/foo
Eine im Papierkorb befindliche Datei wiederherstellen:
$ Trash-Restore 0 2007-08-30 12:36:00 /home/andrea/foo 1 2007-08-30 12:39:41 /home/andrea/bar 2 2007-08-30 12:39:41 /home/andrea/bar2 3 2007-08-30 12:39:41 /home/andrea/foo2 4 2007-08-30 12:39:41 /home/andrea/foo Welche Datei soll wiederhergestellt werden [0..4]: 4 $ ls foo foo
Stellen Sie eine gelöschte Datei wieder her und überschreiben Sie dabei vorhandene Dateien:
$ echo "original">foo $ ls foo $ Trash-Foo $ echo "new">foo $ trash-restore --overwrite 0 2022-11-01 22:15:00 /home/andrea/foo Welche Datei wiederhergestellt werden soll [0..0]: 0 $ Katzenkot Original
Stellen Sie mehrere gelöschte Dateien wieder her, getrennt durch „,“, unterstützt auch den Bereich:
$ Trash-Restore 0 2007-08-30 12:36:00 /home/andrea/foo 1 2007-08-30 12:39:41 /home/andrea/bar 2 2007-08-30 12:39:41 /home/andrea/bar2 3 2007-08-30 12:39:41 /home/andrea/foo2 Welche Datei wiederhergestellt werden soll [0..3]: 0-2, 3 $ ls foo bar bar2 foo2 foo bar bar2 foo2
Alle Dateien aus dem Papierkorb entfernen:
$ Müll leer
Entfernen Sie nur die Dateien, die vor mehr als <Tagen> gelöscht wurden:
$ Papierkorb leer <Tage>
Beispiel:
$ Datum Dienstag, 19. Februar, 20:26:52 Uhr MEZ 2008 $ Papierkorbliste 2008-02-19 20:11:34 /home/einar/today 2008-02-18 20:11:34 /home/einar/yesterday 2008-02-10 20:11:34 /home/einar/last_week $ Müll leeren 7 $ Papierkorbliste 2008-02-19 20:11:34 /home/einar/today 2008-02-18 20:11:34 /home/einar/yesterday $ Müll leeren 1 $ Papierkorbliste 2008-02-19 20:11:34 /home/einar/today
Nur Dateien entfernen, die einem Muster entsprechen:
$ trash-rm *.o
Hinweis: Sie müssen Anführungszeichen verwenden, um das Muster vor einer Shell-Erweiterung zu schützen.
Schritte
sudo mkdir --parent /.Trash sudo chmod a+rw /.Trash sudo chmod +t /.Trash
Sie können, aber Sie sollten nicht. Anfangs hielt ich es für eine gute Idee, das zu tun, aber jetzt habe ich meine Meinung geändert.
Obwohl die Schnittstelle von trash-put mit rm kompatibel zu sein scheint, weist sie eine andere Semantik auf, die Ihnen Probleme bereiten wird. Während rm zum Beispiel -R zum Löschen von Verzeichnissen benötigt, ist dies bei trash-put nicht der Fall.
Sie könnten rm auf etwas aliasen, das Sie daran erinnert, es nicht zu verwenden:
alias rm='echo „Dies ist nicht der Befehl, den Sie suchen.“; FALSCH'
Wenn Sie dann wirklich rm verwenden möchten, stellen Sie einfach einen Backslash voran, um den Alias zu umgehen:
rm Datei-ohne-Hoffnung
Beachten Sie, dass Bash-Aliase nur in interaktiven Shells verwendet werden. Daher sollte die Verwendung dieses Alias nicht zu Konflikten mit Skripten führen, die die Verwendung von rm erwarten.
Von der Home-Partition gelöschte Dateien werden hierher verschoben:
~/.local/share/Trash/
Führen Sie Folgendes aus:
(crontab -l ; echo „@daily $(which trash-empty) 30“) | crontab -
Dadurch wird Ihre Crontab-Datei mit einem Befehl zum Leeren des Papierkorbs aktualisiert, der täglich ausgeführt wird und Dateien entfernt, die älter als 30 Tage sind. Um Ihre Crontab zu überprüfen, verwenden Sie: crontab -l
Wenn pipx verfügbar ist:
pipx installiere trash-cli
Alternativ mit Vanilla Pip installieren:
pip install trash-cli
Hinweis: Möglicherweise möchten Sie ~/.local/bin zum PATH hinzufügen:
echo 'export PATH="$PATH":~/.local/bin' >> ~/.bashrc Quelle ~/.bashrc # .bashrc neu laden
Zur Deinstallation verwenden Sie:
pipx deinstalliert trash-cli
oder:
pip deinstalliert trash-cli
Zunächst müssen Sie alle früheren Versionen von trash-cli deinstallieren:
$ [sudo] pip uninstall trash-cli # die vorherige Version entfernen (mit pip) $ [sudo] apt-get remove trash-cli # die vorherige Version entfernen (mit apt) $ [sudo] yum uninstall trash-cli # die vorherige Version entfernen (mit yum) $ ... # beziehen Sie sich auf den Paketmanager Ihrer Distribution
Dann installieren Sie die neueste Version von Git:
$ [sudo] pip install git+https://github.com/andreafrancia/trash-cli
Nach der Benutzerinstallation möchten Sie möglicherweise diese Zeile zu Ihrer .bashrc/.zshrc hinzufügen:
export PATH=~/.local/bin:"$PATH"
Debian/Ubuntu (apt):
sudo apt install trash-cli
Arch Linux (Pacman):
sudo pacman -S trash-cli
Fedora (dnf):
sudo dnf install trash-cli
Sie müssen Folgendes installieren:
pipx install 'trash-cli[completion]'
oder:
pip install 'trash-cli[completion]'
Dann:
cmds=(Papierkorb leeren, Papierkorb auflisten, Papierkorb wiederherstellen, Papierkorb ablegen) für cmd in ${cmds[@]}; Tun $cmd --print-completion bash | sudo tee /usr/share/bash-completion/completions/$cmd $cmd --print-completion zsh | sudo tee /usr/share/zsh/site-functions/_$cmd $cmd --print-completion tcsh | sudo tee /etc/profile.d/$cmd.completion.csh Erledigt
Wenn Sie einen Fehler entdecken, melden Sie ihn bitte hier:
https://github.com/andreafrancia/trash-cli/issues
Sie können mir eine E-Mail an [email protected] senden.
Umgebungseinrichtung:
python -m venv .venv Quelle .venv/bin/activate pip install -r Anforderungen-dev.txt -r Anforderungen.txt
Laufende Tests:
pytest -m 'not slow' # Nur schnelle Tests ausführen pytest -m 'slow' # langsame Tests ausführen pytest # alle Tests ausführen
Danke an Paypal-Spender.
Vielen Dank an die Projektmitarbeiter.
Vielen Dank an JetBrains für ihre Lizenz für Open Source Development