给“rm”命令添加个“垃圾桶”.docx
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
在Linux系统中,`rm`命令是一个非常强大的工具,用于删除文件和目录。然而,由于它的直接删除特性,误操作可能导致重要数据丢失。为了解决这个问题,我们可以为`rm`命令添加一个“垃圾桶”功能,使得被删除的文件能够被移动到一个临时存储的地方,而非直接永久删除。本文将介绍如何通过一个名为`saferm.sh`的脚本来实现这个功能。 首先,`saferm.sh`脚本是基于GitHub上的开源项目`linux-stuff`中的一个脚本。你可以通过以下步骤获取并安装它: 1. 克隆`linux-stuff`仓库: ``` git clone https://github.com/lagerspetz/linux-stuff ``` 2. 将`saferm.sh`移动到系统路径中的可执行目录,例如`/bin`: ``` sudo mv linux-stuff/scripts/saferm.sh /bin ``` 3. 删除不再需要的仓库文件: ``` rm -Rf linux-stuff ``` 接着,为了使`saferm.sh`成为`rm`命令的别名,你需要编辑`.bashrc`文件: 1. 在`.bashrc`文件末尾添加一行: ``` alias rm=saferm.sh ``` 2. 使更改生效: ``` source ~/.bashrc ``` 完成以上步骤后,当你使用`rm`命令删除文件时,`saferm.sh`脚本会被调用,将文件移动到`$HOME/.local/share/Trash/files`目录,这是大多数Linux桌面环境(如GNOME、KDE、Unity、LXDE)的默认垃圾桶位置。如果检测不到这些桌面环境,脚本会在`$HOME/Trash`创建一个垃圾桶。 例如,删除一个名为`magi.txt`的文件,命令行会显示“Moving magi.txt to $HOME/.local/share/Trash/files”。你可以通过`ls`命令或者`trash-cli`工具来检查垃圾桶中的文件。 `saferm.sh`还提供了几个选项,比如: - `-r`:允许递归删除目录。 - `-f`:允许删除特殊文件(如设备文件)。 - `-u`:不安全模式,绕过垃圾桶直接永久删除文件。 - `-v`:详细模式,显示更多的消息。 这个脚本不仅可以保护你在使用`rm`命令时误删文件,而且还能在服务器环境中使用,提供了一种在删除文件时增加一层安全保障的方法。不过,尽管有了垃圾桶,还是建议定期清理,以免占用过多磁盘空间。 总之,通过`saferm.sh`脚本,我们可以为`rm`命令添加一个类似Windows或macOS中“回收站”的功能,从而降低因误操作导致的数据损失风险。对于那些不希望依赖于图形界面的用户,或者在没有图形界面的服务器环境中,这个方法尤其有用。
- 粉丝: 3
- 资源: 9万+
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助