![在 Linux 中备份文件而不是删除它们](https://linux22.com/image/1319194/%E5%9C%A8%20Linux%20%E4%B8%AD%E5%A4%87%E4%BB%BD%E6%96%87%E4%BB%B6%E8%80%8C%E4%B8%8D%E6%98%AF%E5%88%A0%E9%99%A4%E5%AE%83%E4%BB%AC.png)
假设我使用命令提示符删除任何文件(我说的是 Linux),那么该文件就消失了,我无法恢复该文件。
如果我错误地删除了任何重要文件,那么这对我来说将是一个大问题。
所以我想创建一个备份文件夹。如果我删除某些内容,它应该首先进入该文件夹。它应该从原始位置被删除,但该文件应该移动到备份文件夹。
我正在使用 CentOS 6.2。
答案1
您尝试trash-put
过从trash-cli
包中获取文件吗?它会将您的文件发送到垃圾箱,而不是删除它们。
答案2
删除的文件并没有真正消失。ext3grep如果您立即采取行动并且清楚自己在做什么,通常可以恢复您的数据。
不过,一般来说,命令行是为那些知道自己在做什么的人提供的用户界面。(就像编程语言的 C/C++ 一样。)你想出的任何解决方法都是脆弱的。如果你在告诉系统清空垃圾箱的那一刻意识到自己的错误怎么办?你会安装第二个垃圾箱,这样当你清空第一个垃圾箱时,所有内容都会被发送到第二个垃圾箱吗?
“正确的做法”是不要rm
随意使用。打字时rm
,将打字速度减半,思考在你按下“enter”键之前。
答案3
这本文包含您需要的所有信息。除其他建议外,它还建议创建一个~/.rm
目录,用于放置删除的文件rm
。然后,您可以在每次登录时清除该目录:
将其添加到您的
~/.bashrc
文件中:alias waste='/bin/rm' alias rm='mv $1 ~/.rm'
将其添加到您的
~/.profile
:if [ -x ~/.rm ]; then /bin/rm -r ~/.rm mkdir ~/.rm chmod og-r ~/.rm else mkdir ~/.rm chmod og-r ~/.rm fi
如果您不想在每次登录时而是在每次重新启动时清除它们,请不要将步骤 2 中的行添加到您的配置文件中,而是运行crotab -e
并将此行添加到将出现的文件中:
@reboot [ -x ~/.rm ] && /bin/rm -r ~/.rm; mkdir ~/rm && chmod og-r ~/.rm