在Linux系统中,回收站功能并非内置,但可以通过一些方法实现类似功能,并且可以迁移到新的位置。以下是几种常见的方法:
创建回收站目录:
mkdir -p ~/.local/share/Trash
编写 trash 脚本:
创建一个名为 trash.sh
的脚本,替代系统默认的 rm
命令。
#!/bin/bash
TRASH_DIR="$HOME/.local/share/Trash"
if [ ! -d "$TRASH_DIR" ]; then
mkdir -p "$TRASH_DIR"
fi
for FILE in "$@"; do
if [ -e "$FILE" ]; then
TIMESTAMP=$(date +"%Y%m%d%H%M%S")
BASENAME=$(basename "$FILE")
NEW_NAME="${BASENAME}_$TIMESTAMP"
mv "$FILE" "$TRASH_DIR/$NEW_NAME"
else
echo "'$FILE' does not exist!"
fi
done
赋予脚本可执行权限:
chmod +x ~/trash.sh
替换系统默认的 rm 命令:
编辑 ~/.bashrc
或 ~/.zshrc
文件,添加以下内容:
alias rm='/home/your_username/trash.sh'
更新终端配置:
source ~/.bashrc
迁移回收站目录: 备份现有回收站目录:
cp -r ~/.local/share/Trash ~/.local/share/Trash_backup
创建新的回收站目录:
mkdir -p /new/path/.trash
修改 trash.sh
脚本中的回收站路径:
TRASH_DIR="/new/path/.trash"
更新 crontab 自动化任务(如果需要):
crontab -l
echo "0 0 * * * /home/your_username/trash.sh" | crontab -
安装 trash-cli:
sudo apt-get install trash-cli -y
使用 trash-cli 迁移回收站:
使用 trash-put
命令将文件移动到新的回收站目录:
trash-put /path/to/deleted/files
配置 trash-cli 使用新的回收站目录:
编辑 ~/.config/trash/config.json
文件,修改回收站路径:
{
"repository": "/new/path/.trash"
}
通过以上步骤,您可以在 Linux 系统中实现回收站功能,并将其迁移到新的位置。这种方法不仅提高了误删文件的恢复能力,还能有效管理磁盘空间。