简体中文
rash-cli 会删除记录原始路径、删除日期和权限的文件。它使用与 KDE、GNOME 和 XFCE 相同的垃圾桶,但您可以从命令行(和脚本)调用它。
它提供了这些命令:
垃圾放垃圾文件和目录。 清空垃圾箱 清空垃圾桶。 垃圾列表 列出已删除的文件。 垃圾恢复 恢复已删除的文件。 rash-rm 从垃圾桶中删除单个文件。
删除文件:
$ 垃圾放入 foo
列出已删除的文件:
$ 垃圾列表 2008-06-01 10:30:48 /home/andrea/酒吧 2008-06-02 21:50:41 /home/andrea/酒吧 2008-06-23 21:50:49 /home/andrea/foo
在垃圾桶中搜索文件:
$ 垃圾列表 | grep foo 2007-08-30 12:36:00 /home/andrea/foo 2007-08-30 12:39:41 /home/andrea/foo
恢复已删除的文件:
$ 垃圾恢复 0 2007-08-30 12:36:00 /home/andrea/foo 1 2007-08-30 12:39:41 /home/andrea/酒吧 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 要恢复什么文件[0..4]:4 $ ls foo 富
恢复已删除的文件并覆盖现有文件:
$ echo "原始">foo $ls 富 $垃圾富 $ 回声“新”> foo $ 垃圾恢复--覆盖 0 2022-11-01 22:15:00 /home/andrea/foo 要恢复什么文件[0..0]:0 $ 猫福 原来的
恢复多个以“,”分隔的垃圾文件,也支持范围:
$ 垃圾恢复 0 2007-08-30 12:36:00 /home/andrea/foo 1 2007-08-30 12:39:41 /home/andrea/酒吧 2 2007-08-30 12:39:41 /home/andrea/bar2 3 2007-08-30 12:39:41 /home/andrea/foo2 要恢复什么文件[0..3]:0-2、3 $ ls foo bar bar2 foo2 foo 酒吧 bar2 foo2
从垃圾桶中删除所有文件:
$ 垃圾清空
仅删除 <days> 之前删除的文件:
$ 垃圾清空 <天数>
例子:
$ 日期 2008 年欧洲中部时间 2 月 19 日星期二 20:26:52 $ 垃圾列表 2008-02-19 20:11:34 /home/einar/今天 2008-02-18 20:11:34 /home/einar/昨天 2008-02-10 20:11:34 /home/einar/last_week $ 垃圾清空 7 $ 垃圾列表 2008-02-19 20:11:34 /home/einar/今天 2008-02-18 20:11:34 /home/einar/昨天 $ 垃圾清空 1 $ 垃圾列表 2008-02-19 20:11:34 /home/einar/今天
仅删除与模式匹配的文件:
$ 垃圾-rm *.o
注意:您需要使用引号来保护模式免受 shell 扩展的影响。
步骤
sudo mkdir --parent /.Trash sudo chmod a+rw /.垃圾桶 sudo chmod +t /.Trash
你可以,但你不应该。早期我认为这样做是个好主意,但现在我改变了主意。
尽管trash-put的接口看起来与rm兼容,但它具有不同的语义,这会给你带来问题。例如,虽然 rm 需要 -R 来删除目录,但rash-put 则不需要。
您可以使用 rm 别名来提醒您不要使用它:
alias rm='echo "这不是您要查找的命令。";错误的'
然后,如果您确实想使用 rm,只需在前面添加一个反斜杠即可绕过别名:
rm 文件-无希望
请注意,Bash 别名仅在交互式 shell 中使用,因此使用此别名不应干扰期望使用 rm 的脚本。
从主分区删除的文件将移至此处:
〜/.local/share/Trash/
运行这个:
(crontab -l ; echo "@daily $(其中垃圾清空) 30") | crontab -
这将使用每天运行的垃圾清空命令更新您的 crontab 文件,并删除超过 30 天的文件。要查看您的 crontab,请使用: crontab -l
如果 pipx 可用:
pipx 安装垃圾-cli
或者,使用 vanilla pip 安装:
pip 安装垃圾-cli
注意:您可能需要将 ~/.local/bin 添加到 PATH 中:
echo 'export PATH="$PATH":~/.local/bin' >> ~/.bashrc source ~/.bashrc # 重新加载 .bashrc
对于卸载使用:
pipx 卸载垃圾桶-cli
或者:
pip 卸载垃圾-cli
首先,您需要卸载任何以前版本的trash-cli:
$ [sudo] pip uninstallrash-cli # 删除以前的版本(使用pip) $ [sudo] apt-getremovetrash-cli # 删除以前的版本(使用apt) $ [sudo] yum uninstallrash-cli # 删除以前的版本(使用 yum) $ ... # 参考您的发行版的包管理器
然后从 git 安装最新版本:
$ [sudo] pip install git+https://github.com/andreafrancia/trash-cli
用户安装后,您可能需要将此行添加到 .bashrc/.zshrc 中:
导出 PATH=~/.local/bin:"$PATH"
Debian/Ubuntu(适用):
sudo apt安装trash-cli
Arch Linux(吃豆人):
sudo pacman -S 垃圾夹
软呢帽(dnf):
sudo dnf 安装垃圾-cli
您需要通过以下方式安装:
pipx install 'trash-cli[完成]'
或者:
pip install 'trash-cli[完成]'
然后:
cmds=(垃圾-清空垃圾-列表垃圾-恢复垃圾-放入垃圾) 对于 ${cmds[@]} 中的 cmd;做 $cmd --print-completion bash | $cmd --print-completion sudo tee /usr/share/bash-completion/completions/$cmd $cmd --print-completion zsh | $cmd --print-completion zsh | sudo tee /usr/share/zsh/site-functions/_$cmd $cmd --打印完成 tcsh | sudo tee /etc/profile.d/$cmd.completion.csh 完毕
如果您发现错误,请在此处报告:
https://github.com/andreafrancia/trash-cli/issues
您可以使用 [email protected] 向我发送电子邮件。
环境设置:
python -m venv .venv 源 .venv/bin/activate pip install -r 要求-dev.txt -r 要求.txt
运行测试:
pytest -m 'not Slow' # 只运行快速测试 pytest -m 'slow' # 运行慢速测试 pytest # 运行所有测试
感谢 Paypal 捐助者。
感谢项目贡献者。
感谢 JetBrains 的开源开发许可