慎用rm -rf /与 rm -rf /* 推荐使用mv代替rm

 更新时间:2021年10月21日 15:16:16   作者:代序春秋  
本文主要介绍了慎用rm -rf /与 rm -rf /* 推荐使用mv代替rm,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

rm 命令可以删除一个目录中的一个或多个文件或目录,也可以将某个目录及其下属的所有文件及其子目录均删除掉

命令 作用
-f 强制删除文件或目录
-i 删除已有文件或目录之前先询问用户
-r 递归处理, 将指定目录下的所有文件与子目录一并处理
/ 在Linux中表示根目录
* 所有文件
/* 根目录下的所有文件

注意:一旦你执行了上述“rm -rf /” 或者“rm -rf /*”命令,会删除Linux根目录下的所有文件,直接导致服务器瘫痪

解决的办法只有一个,如下:

程序员应该养成好的习惯,慎用rm命令,用mv命令代替.

命令 作用
~/ 当前登录用户的用户目录
./ 表示当前目录
pwd 查看当前所在路径

mv实现步骤:

1、打开一个终端,输入命令:vim ~/.bashrc

2、在打开的文件最后加入如下代码:

mkdir -p ~/.trash   #在家目录下创建一个.trash文件夹(隐藏文件,ls -a 查看)
alias rm=del        #使用别名del代替rm   
del()               #函数del,作用:将rm命令修改为mv命令
{  
  mv $@ ~/.trash/  
}  
cleardel()          #函数cleardel,作用:清空回收站.trash文件夹,y或Y表示确认,n表示取消
{  
    read -p "clear sure?[Input 'y' or 'Y' to confirm. && Input 'n' to cancel.]" confirm   
    [ $confirm == 'y' ] || [ $confirm == 'Y' ]  && /bin/rm -rf ~/.trash/*   
}  

3、保存修改并退出
4、使设置生效:在终端下输入source ~/.bashrc。
5、如果没有生效,请关闭终端重新打开也可以,本步骤同4步骤(source - ~/.bashrc)作用相同。至此,已经设置完成,可以在终端下进行测试了。

测试结果(命令总结)

1、删除文件

del [文件名]
rm [文件名]
del *
rm *

2、清空回收站(即:清空.trash文件夹)

cleardel

注:该命令会有一个是否删除确认,y或Y表示确认删除,n表示取消删除。
注:rm命令已经删除,所以要彻底删除文件的话,可以先del删除文件到垃圾箱,然后进入~/.trash文件夹使用cleardel命令来彻底清除垃圾箱里的所有文件。

到此这篇关于慎用rm -rf /与 rm -rf /* 推荐使用mv代替rm的文章就介绍到这了,更多相关rm -rf /与 rm -rf /* 内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Centos下查看网卡的实时流量命令

    Centos下查看网卡的实时流量命令

    本文介绍了linux下查看网卡流量的六种方法,linux系统中使用nload、iftop、iostat等工具查看网卡流量,这里我们先来详细讲解下 iptraf 方法,需要的朋友参考下。
    2015-05-05
  • linux下监视进程 崩溃挂掉后自动重启的shell脚本

    linux下监视进程 崩溃挂掉后自动重启的shell脚本

    如何保证服务一直运行?如何保证即使服务挂掉了也能自动重启?在写服务程序时经常会碰到这样的问题。在Linux系统中,强大的shell就可以很灵活的处理这样的事务
    2013-06-06
  • linux链接编译详解

    linux链接编译详解

    通过自己编写Makefile文件来实现多目标文件的链接,其实就是将gcc 编译命令写入到Makefile文件,通过执行make 指令来实现编译。这样我不需要每次都敲入gcc -指令。直接输入make就OK了。
    2014-02-02
  • Shell中变量作用域的介绍与使用命令

    Shell中变量作用域的介绍与使用命令

    作用域是我们在日常学习或者工作中经常会遇到的一个问题,下面这篇文章主要给大家介绍了关于Shell中变量作用域的相关资料,文中介绍的非常详细,需要的朋友可以参考借鉴,下面跟着小编来一起学习学习吧。
    2017-08-08
  • bash shell逻辑表达式的使用

    bash shell逻辑表达式的使用

    bash shell逻辑表达式一般有3种写法,本文就来介绍一下bash shell逻辑表达式的具体使用,具有一定的参考价值,感兴趣的可以了解一下
    2023-05-05
  • Shell脚本配合iptables屏蔽来自某个国家的IP访问

    Shell脚本配合iptables屏蔽来自某个国家的IP访问

    这篇文章主要介绍了Shell脚本配合iptables屏蔽来自某个国家的IP访问,本文利用IPdeny的IP数据,然后用Shell脚本导入iptables实现屏蔽IP访问,需要的朋友可以参考下
    2015-04-04
  • Linux中mysqldump命令实例详解

    Linux中mysqldump命令实例详解

    mysqldump是mysql数据库中备份工具,用于将MYSQL服务器中的数据库以标准的sql语言的方式导出,并保存到文件中。今天通过本文给大家介绍mysqldump命令实例详解,一起看看吧
    2016-12-12
  • 用shell批量修改文件名的方法

    用shell批量修改文件名的方法

    这篇文章主要为大家介绍了shell对文件夹中全部文件的名称加以批量替换、修改的方法,文中的示例代码讲解详细,对大家的学习或工作有一定的参考价值,感兴趣的可以了解一下
    2023-09-09
  • Shell命令批量修改图片文件名

    Shell命令批量修改图片文件名

    这篇文章主要介绍了Shell命令批量修改图片文件名,本文使用for循环、awk、sed等命令实现批量修改图片文件名,需要的朋友可以参考下
    2014-12-12
  • linux下使用perl获取本机ip的几种方法介绍

    linux下使用perl获取本机ip的几种方法介绍

    需要获取本机ip有很多种情景,比如做分布式处理的时候。那么,如何在worker脚本里获取本机ip?本文列举了一系列的方法,有长有短,各有优劣,有shell有perl有python
    2013-02-02

最新评论