阅读量:0
在 Linux 系统中,回收站功能并非内置,但可以通过一些方法实现类似功能,并且可以迁移到新的位置。以下是一些常见的方法:
使用 trash 脚本实现回收站功能
-
编写
trash脚本:- 创建一个名为
trash的 Shell 脚本,替代系统默认的rm命令。 - 该脚本的作用是将用户想要删除的文件移动到回收站目录,并为文件添加时间戳以防止重名。
#!/bin/bash TRASH_DIR="$HOME/.trash" if [ ! -d "$TRASH_DIR" ]; then mkdir -p "$TRASH_DIR" fi if [ $# -eq 0 ]; then echo "Usage: $0 file_or_directory" exit 1 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 ~/bin/trash.sh -
替换系统默认的
rm命令:- 编辑
~/.bashrc或~/.zshrc文件,添加以下内容:
alias rm='~/bin/trash.sh' - 编辑
-
更新终端配置:
source ~/.bashrc
迁移回收站目录
-
备份现有回收站目录:
- 在迁移之前,建议备份现有的回收站目录,以防万一。
cp -r ~/.local/share/Trash ~/.local/share/Trash_backup -
创建新的回收站目录:
- 在新的位置创建一个新的回收站目录,例如
/new/path/.trash。
mkdir -p /new/path/.trash - 在新的位置创建一个新的回收站目录,例如
-
修改
trash脚本中的回收站路径:- 编辑
trash脚本,将TRASH_DIR变量的值修改为新的回收站路径。
TRASH_DIR="/new/path/.trash" - 编辑
-
更新
crontab自动化任务(如果需要):- 修改
crontab中的任务,使其指向新的回收站目录。
(crontab -l ; echo "0 0 * * * ~/bin/clean_trash.sh") | crontab - - 修改
使用 trash-cli 命令行工具
-
安装
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 系统中实现回收站功能,并将其迁移到新的位置。这种方法不仅提高了误删文件的恢复能力,还能有效管理磁盘空间。
以上就是关于“Linux回收站如何迁移”的相关介绍,筋斗云是国内较早的云主机应用的服务商,拥有10余年行业经验,提供丰富的云服务器、租用服务器等相关产品服务。云服务器资源弹性伸缩,主机vCPU、内存性能强悍、超高I/O速度、故障秒级恢复;电子化备案,提交快速,专业团队7×24小时服务支持!
简单好用、高性价比云服务器租用链接:https://www.jindouyun.cn/product/cvm