在CentOS系统中,回收站功能并非由系统默认提供,但可以通过一些方法手动实现。以下是创建和使用CentOS回收站的步骤:
首先,在根目录下创建一个用于存放删除文件的目录:
mkdir -p /root/.trash
rm
命令为了使 rm
命令将文件移动到回收站而不是直接删除,可以创建一个自定义的 rm
命令。
创建一个名为 remove.sh
的脚本文件:
#!/bin/bash
TRASH_DIR="/root/.trash"
for item in "$@"
do
TIMESTAMP=$(date +%s)
FILENAME=$(basename "$item")
mv "$item" "$TRASH_DIR/$FILENAME.$TIMESTAMP"
done
将该脚本文件复制到 /bin
目录下,并命名为 rm
:
cp remove.sh /bin/rm
赋予 rm
脚本执行权限:
chmod +x /bin/rm
/root/.bashrc
文件接下来,编辑 root 用户的环境变量文件 .bashrc
:
vi /root/.bashrc
在文件的末尾添加以下内容:
# 定义回收站相关命令
alias rmtrash 'mv -i /root/.trash/@ ./'
alias rtrash 'ls /root/.trash/'
alias rl 'ls /root/.trash/'
alias urundelfile 'undelfile()'
undelfile() {
mv -i /root/.trash/@ ./
}
trash() {
mv @ /root/.trash/
}
cleartrash() {
read -p "确定要清空回收站?(y/n)"
if [ "$REPLY" == "y" ]; then
/bin/rm -rf /root/.trash/*
fi
}
保存并退出编辑器,然后重新加载环境变量以使更改生效:
source /root/.bashrc
为了自动清理回收站中的文件,可以设置一个定时任务。
使用 crontab -e
编辑定时任务:
crontab -e
添加以下行以每天清理一次回收站:
0 0 * * * /bin/rm -rf /root/.trash/*
这行命令会在每天午夜删除回收站中的所有内容。
通过上述方法设置的回收站功能类似于Windows系统,可以有效防止因误操作而删除重要数据。如果需要其他用户也能使用回收站功能,可以将上述步骤中的 /root
替换为 /home
,并相应地修改环境变量文件(如 /home/username/.bashrc
)。