在Linux服务器上,默认情况下是没有回收站的。与Windows系统不同,Linux的rm命令执行删除操作时,不会将文件移动到回收站,而是直接从文件系统中删除。这意味着一旦使用rm命令删除文件,文件将无法通过简单的方法恢复。
如何查看和恢复删除的文件
尽管Linux没有默认的回收站功能,但可以通过一些方法来查看和恢复删除的文件:
1.手动创建回收站功能
2.使用trash-cli工具: 安装trash-cli工具,可以使用类似回收站的功能。安装命令如下: sudo apt-get install trash-cli 然后将rm命令替换为trash-put: alias rm='trash-put'
3.使用文件恢复工具: 如果文件已经被删除,可以尝试使用文件恢复工具如testdisk或extundelete来恢复文件。例如,使用extundelete恢复文件: sudo extundelete /dev/sdX --restore-file/path/to/ deleted/file
今天来分享第一种方法
1.首先第一步:创建一个文件夹充当回收站
mkdir -p ~/.trash
2.使用vim编辑器定义一个回收站脚本
vim ~/.bashrc_trash
alias del=trash
#命令别名 调用del相当于调用trash函数,该函数用于将文件移动到回收站文件夹中
# 将指定的文件移动到trash(回收站)目录下
# 将指定的文件移动到trash(回收站)目录下
trash() {
mkdir -p ~/.trash # 确保回收站目录存在
mv "$@" ~/.trash/
}# 查看回收站中的文件
alias lr='ls ~/.trash'# 找回回收站中的文件
undelfile() {
mkdir -p ~/.trash # 确保回收站目录存在
for file in "$@"; do
if [ -e ~/.trash/"$file" ]; then
mv -i ~/.trash/"$file" ./
else
echo "文件 ~/.trash/$file 不存在,无法恢复。"
fi
done
}# 清空回收站目录下的所有文件
cls() {
read -p "确定要清空回收站吗?[y/n] " confirm
if [ "$confirm" == 'y' ] || [ "$confirm" == 'Y' ]; then
rm -rf ~/.trash/*
echo "回收站已清空。"
else
echo "操作已取消。"
fi
}
3.第三步配置环境变量
vim ~/.bashrc
#文件末尾添加以下代码
if [ ! -f "~/.bashrc_trash" ]; then
. ~/.bashrc_trash
fi
4.最后加载环境变量使脚本生效
source ~/.bashrc
说明(对脚本配置的一个使用说明):
1.删除命令 del + 要删除的文件名
2.查看回收站命令 lr
3.将回收站中的文件找回到当前文件夹 ur + 需要找回的文件名
4.清空回收站 cls