在 Linux 中默认没有像 Windows 那样的回收站机制,删除文件通常是永久删除。但可以通过多种方式实现“回收站”功能。下面按常见程度和使用场景给你介绍几种开启/实现方式。
trash-cli(强烈推荐 ✅)trash-cli 是 Linux 下最成熟的回收站工具,符合 FreeDesktop.org 回收站规范。
Ubuntu / Debian
sudo apt update
sudo apt install trash-cli
CentOS / Rocky / Alma
sudo yum install trash-cli
# 或
sudo dnf install trash-cli
Arch
sudo pacman -S trash-cli
✅ 删除文件(放入回收站)
trash 文件名
trash 目录名
✅ 查看回收站
trash-list
✅ 恢复文件
restore-trash
会列出文件,输入编号即可恢复。
✅ 清空回收站
trash-empty
✅ 清空 N 天前的文件
trash-empty 30
⚠️ 不建议直接 alias rm,容易误删系统文件
但如果你确定要:
alias rm='trash'
建议写入:
~/.bashrc
如果你使用的是:
✅ 图形界面删除文件自动进回收站
回收站位置:
~/.local/share/Trash
结构:
Trash/
├── files # 实际文件
├── info # 删除信息(时间、路径)
适合服务器环境。
mkdir -p ~/.trash
cat > /usr/local/bin/del <<EOF
#!/bin/bash
mv "$@" ~/.trash/
EOF
chmod +x /usr/local/bin/del
del 文件名
恢复:
mv ~/.trash/文件名 ./
✅ 不建议开启回收站,原因:
rm 行为更可预测✅ 推荐做法:
rm 前先 lsrsync / cp 做备份| 方案 | 适合场景 | 推荐度 |
|---|---|---|
| trash-cli | 桌面 / 服务器 | ⭐⭐⭐⭐⭐ |
| 桌面环境回收站 | GUI | ⭐⭐⭐⭐ |
| 手动 trash | 服务器 | ⭐⭐⭐ |
| 直接 rm | 生产环境 | ✅ 标准 |
如果你愿意,可以告诉我:
我可以帮你定制一套最安全的方案。