各位小朋友们大家好~又是一个阳光明媚的周末,不知道大家有没有早起呢~
话说,这阳光也有点儿太明媚了…
好热好热好热…
好啦,在你们睡懒觉的时候,小乐子已经在周围逛了一圈回来啦,做好准备,我们今天要来分享一个非常可怕的命令哦:
rm
Ummmm…这个命令是做什么用的呢?
“rm”其实就是英文单词“”的缩写,取了单词前缀“re”中的字母“r”和词尾字母“move”中的字母“m”组合而成。
它的意思呢,相信大家已经很明白了,就是“删除”。所以这个“rm”命令的作用,就是可以帮助我们删除文件和目录——并且是永久性删除哦——在bash脚本中可没有“回收站”这个东西。
我们先来看一下手册对于“rm”命令的描述吧:
“ files or ”——手册简直太简单粗暴了。不过我们可以来看一眼它的详细描述,其中有这么一句话“By ,it does not ”,也就是说在默认的情况下,rm不会删除目录——我们必须给予rm命令特殊的参数,它才会删除目录。
好啦,我们来详细看一下“rm”命令的用法吧。
基本语法
rm
其实“rm”命令的基本语法特别简单,我们只需要在命令后面直接输入要删除的目标名称就可以了。
来看一下下面的例子吧。
在这个目录中,有很多的文件和子目录:
哇哦~好多文件~
我们试着来删除“苍老师1”这个文件吧:
rm 苍老师1
观察上面的截图大家发现,在执行完“rm”命令后,linux没有给我们作出任何的提示,就执行完成了删除操作。当我们再次使用“ls”命令查看目录下的文件的时候,发现目标文件已经不存在了,被删除了。
这就是为什么小乐子说这是一个非常可怕的命令,它简直就像是一个高效的杀手,我们只要告诉它要杀谁,它就会毫不犹豫地彻底执行。
批量删除
更可怕的是,“rm”命令还支持通配符,使用通配符能够快速进行批量删除。
我们接着看例子,在我们的目录下,还有两个与“苍老师”有关的文件,如果我们想一下子全部删除它们,可以使用星号通配符“*”来进行操作:
rm 苍老师*
我们来看一下实际的执行结果:
简直太可怕了,“rm”命令毫无升息地“秒杀”了所有的“苍老师”——这简直就是广大女程序媛们用来清理男朋友电脑的利器!
不过首先还是得要有男朋友……
好吧好吧,如果大家不记得有关通配符的概念,可以翻一下小乐子过去的分享哦~我们继续吧。
参数:-i
既然“rm”命令的删除效率这么高效,为了防止误删除操作,我们当然要有一些应对的方式啦。首当其冲的就是使用参数“-i”啦~
其实小伙伴们应该已经发现了,在之前的分享中,我们已经接触到过“-i”这个参数了。它会询问我们是否要确认执行进行当前的操作——例如覆盖已有的文件等。
在“rm”命令中,使用“-i”参数也能够帮助我们在执行删除操作前进行一次确认:
rm -i
我们还是拿刚才的例子来尝试,当我们需要删除所有名字带有“苍老师”的文件的时候,如果增加“-i”参数,就会变成这样:
就像上面图片里的那样,当我们使用通配符“*”进行批量删除的时候,在彻底删除每一个文件之前,参数“-i”都会提醒我们是否要执行删除。
所以啦,我们一定要学会习惯使用参数“-i”哦
参数:-R
除了删除文件之外,有时候我们还可能会需要删除目录。大家一起来看下面这个例子吧:
在这个文件目录结构中,在根目录下包含有一个二级目录“”,在“”下还包含有一个三级目录“”。此时,如果我们在根目录下尝试使用“rm”整体删除目录“”:
rm -i
我们会看到这样一条提示消息:
还记得我们在手册里看到的那句话不?“By ,it does not ”。这个时候,我们需要怎么做呢?
使用参数“-R”
大家还记得我们在分享复制命令和移动命令时提到过的“-R”参数吗?这个参数会帮助我们递归进入到所有的下级目录中去,自动处理所有的文件和子目录。实际上,“递归”这个词汇的英文单词就是“”。
rm -i -R
由于我们同时使用了参数“-i”,因此每执行一次删除之前,Linux都会询问我们是否要确定执行。
使用了“-R”之后,就能够递归删除子目录和其中的内容啦。我们来看一下删除操作的执行结果:
所有的二级目录、三级目录和其中的文件全部都被删除啦~
参数:-f
“rm”命令还有另外一个必须要和大家分享的参数,那就是“-f”啦。
实际上,这个字母“f”在这里代表的是“force”,表示“强制删除”的意思。
嘿嘿,是不是听起来就很恐怖的样子。事实上确实很恐怖,一旦使用了这个参数,Linux系统就会好不犹豫地把目标删除掉,并且不给我们任何提示信息。所以啦,大家一定要留神哦~
好啦,今天的分享就到这里啦,天气好热,我要去休息一会儿啦~~
———END———
限 时 特 惠: 本站每日持续更新海量各大内部创业教程,永久会员只需109元,全站资源免费下载 点击查看详情
站 长 微 信: nanadh666