linux - Linux 中的回收站脚本

标签 linux bash recycle-bin

在我的生产服务器中,有人执行了 rm -rf,我的重要文件被永久删除了。所以,我想到了一个回收站,这样如果用户执行 rm,文件将移动到 RecycleBin 而不是从服务器中删除。我为此制作了以下脚本。但是我在执行时遇到了一些错误。

alias rm='/root/remove.sh'

#rm 测试文件 现在,当您键入 rm 命令时,下面的脚本将触发

#!/bin/bash
dir=$(密码)
mv $dir/$1/root/回收站

当触发上述脚本时,出现以下错误。

mv:无法将“/root/test_file”移动到“/root/Recyclebin”:不是目录

现在,请建议除此之外还有其他方法可以制作回收站概念,或者请帮助解决错误。提前致谢。

我使用的是 CentOS 5.6

最佳答案

试试这个 首先在/root下创建一个名为MyTrash的文件夹即:/root/MyTrash

然后打开.bashrc 文件并在文件底部写入以下行。

alias rm='mv -t/root/MyTrash/'

这里-t的意思是

-t, --target-directory=DIRECTORY
       move all SOURCE arguments into DIRECTORY

通过运行此命令更新 .bashrc 文件 source .bashrc

现在,如果您使用 rm 命令删除任何文件,该文件将被移动到 /root/MyTrash 目录

关于linux - Linux 中的回收站脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15802571/

相关文章:

c# - 将文件发送到回收站

c - 在 Ubuntu 中运行,在 Debian 中运行 SegFault(C,strtok)

python - 须藤安装-Python 3?

linux - 在 bash 脚本中找不到检测命令

winapi - win32api 使用 SHFileStruct 从回收站还原文件

java - 显示随机值

python - 使用命名(fifo)管道在 python 和 c++ 之间传输数组(图像)

php - 在 PHP7、ubuntu 上调用未定义函数 json_encode()、ctype_digit()

linux - 通过 Bash 从文本文件中删除空行,包括空格字符

sql-server - docker容器在bash命令和sql执行后死亡