Управление корзиной в Linux с помощью утилиты trash-cli

Утилита trash-cli — инструмент командной строки Linux, предназначенный для управления корзиной.

Возможности:

  • перемещать файлы в корзину;
  • восстанавливать их;
  • очищать корзину.

Установка

git clone https://github.com/andreafrancia/trash-cli.git
cd trash-cli
sudo python3 setup.py install
 
sudo apt install trash-cli
trash --help
  • trash-put — перемещает файлы и каталоги в корзину.
  • trash-empty — очищает корзину (или все корзины).
  • trash-list — выводит список файлов в корзине.
  • trash-restore — восстанавливает файл из корзины.
  • trash-rm — удаляет отдельные файлы из корзины.
trash-put pipe2 pipe3

Запуск trash-restore и выбрать номер файла или папки.

$ trash-restore
 
#или
 
$ echo "original">foo
$ ls
foo
$ trash foo
$ echo "new">foo
$ trash-restore --overwrite
0 2022-11-01 22:15:00 /home/andrea/foo
What file to restore [0..0]: 0
$ cat foo
original

Запустить trash-empty и указать количество дней, файлы старше этих дней будут удалены.

trash-empty 7

Добавить автоматическое удаление файлов из корзины

(crontab -l ; echo "@daily $(which trash-empty) 30") | crontab -
trash-rm \*.txt

Важные замечения.

1. Нет необходимости делать алиас для rm, лучше сделать так. Если нужно запустить без alias, то можно \rm myfile.txt или command rm

alias rm='echo "This is not the command you are looking for."; false'

2. Файлы перемещаются в папку ~/.local/share/Trash/ и если trash-list не показывает вложенные удалённые файлы, то можно посмотреть по этому пути.