在CentOS系统中,可以通过以下几种方法来设置回收站以防止误删:
方法一:禁用 rm
指令并创建回收站
-
禁用
rm
指令:- 打开终端,编辑
~/.bashrc
文件:vim ~/.bashrc
- 将
rm
命令重命名为rm -i
或自定义一个更安全的形式。 - 保存并退出编辑器,然后测试
rm
命令是否被禁用:rm testfile
- 打开终端,编辑
-
创建回收站:
- 创建回收站目录:
mkdir -p ~/.LJ_Bin
- 编辑
~/.bashrc
文件,添加以下内容:alias sc=LJ_Bin alias sl='ls ~/.LJ_Bin' clearall(){ read -p "Clear LJ_Bin? [y/n]" confirm[$confirm == 'y' ] || [ $confirm == 'Y' ] && /usr/bin/rm -rf ~/.LJ_Bin/* }
- 保存并退出编辑器,然后测试回收站功能:
sc testfile # 删除文件 sl # 查看回收站 clearall # 清空回收站
- 恢复文件可以使用
mv
命令将文件移回原目录。
- 创建回收站目录:
方法二:使用 trash-cli
工具
-
安装
trash-cli
:sudo yum install -y trash-cli
-
配置
trash-cli
:- 编辑
/etc/profile
或~/.bashrc
文件,添加以下内容:alias rm='/usr/bin/trash'
- 保存并退出编辑器,然后重新加载配置:
source /etc/profile
- 编辑
-
使用
trash-cli
:- 删除文件时,使用
rm
命令即可,文件会被移动到回收站。 - 查看回收站:
trash
- 清空回收站:
trash -c
- 删除文件时,使用
方法三:自定义回收站脚本
-
创建回收站目录:
mkdir -p ~/.Trash
-
创建
remove.sh
脚本:vi ~/.remove.sh
添加以下内容:
#!/bin/bash TRASH_DIR="$HOME/.Trash" for item in "$@"; do TIMESTAMP=$(date +%s) FILENAME=$(basename "$item") mv "$item" "$TRASH_DIR/$FILENAME.$TIMESTAMP" done
-
设置脚本权限:
chmod +x ~/.remove.sh
-
配置别名:
- 编辑
~/.bashrc
文件,添加以下内容:alias rm='/home/username/.remove.sh'
- 保存并退出编辑器,然后重新加载配置:
source ~/.bashrc
- 编辑
-
使用别名:
- 删除文件时,使用
rm
命令即可,文件会被移动到回收站。
- 删除文件时,使用
通过以上方法,可以在CentOS系统中设置回收站,从而有效防止误删重要文件。选择适合的方法进行配置即可。