Linux系统本身没有Windows风格的图形化回收站,但可通过命令行工具、桌面环境自带功能或手动配置实现类似功能。以下是具体方法:
命令行工具提供更灵活的回收站管理功能,适合习惯终端操作的用户。
sudo apt install trash-clisudo yum install trash-clisudo dnf install trash-clitrash /path/to/file(支持通配符,如trash *.log)trash list(显示文件名、删除时间及大小)trash restore 文件名(如trash restore document.txt)trash empty(可添加-f强制清空,或trash empty 7清空7天前的文件)。gvfs-trash /path/to/filegvfs-trash-empty(需配合-a参数清空所有用户的回收站)。适合不想安装额外工具的用户,通过修改shell配置文件重定向rm命令。
~/.trash或~/.local/share/Trash):mkdir ~/.trash # 或 ~/.local/share/Trash
rm命令:编辑用户配置文件(如~/.bashrc或~/.zshrc),添加别名:alias rm='mv --target-directory=$HOME/.trash --force' # 强制移动文件至回收站
source ~/.bashrc(或source ~/.zshrc)使别名生效。rm命令(如rm test.txt),文件会被移动至~/.trash。rm -rf ~/.trash/*(谨慎使用,会永久删除文件)。~/.trash复制回原路径。主流桌面环境(如GNOME、KDE)已内置回收站功能,无需额外配置。
~/.local/share/Trash/files目录。rm -rf ~/.local/share/Trash/files/*。~/.local/share/Trash目录。无论是手动还是工具创建的回收站,都需定期清理过期文件。
#!/bin/bash
TRASH_DIR="$HOME/.trash" # 替换为你的回收站路径
find "$TRASH_DIR" -type f -mtime +30 -exec rm -f {} \; # 删除30天前的文件
echo "$(date): Trash cleaned up." >> "$TRASH_DIR/clean.log" # 记录日志
~/bin/clean_trash.sh,赋予执行权限:chmod +x ~/bin/clean_trash.sh。crontab -e,添加以下内容(每天凌晨0点执行):0 0 * * * ~/bin/clean_trash.sh
~/.trash)的权限为700(仅用户可访问),避免其他用户查看敏感文件。