命令简介
之前我们已经讲了文件和目录的创建及复制,今天我们来讲一讲剪切和删除。
mv——移动、重命名文件
rm——删除文件
命令详解
语法
1 | mv [选项] 参数1 参数2 |
mv,move的缩写,移动;rm,remove的缩写,删除。这样介绍,相信校友们更容易理解和记忆命令的用途。
参数
1 | mv [选项] 源文件 目标文件 |
在语法上,mv命令和cp命令其实很相似。选项和参数都差不多,也有三种模式。
不同的是,cp命令是在另一个地方复制一份文件,整个计算机就有了两份内容一样的文件;而mv命令是将文件移动到另一个地方,整个计算机还是只有一份这样的文件。
注意,对文件执行mv命令,不会更新文件的时间属性。
但是执行cp命令,默认情况下会更新文件的时间属性。
除了名字不一样,内容、时间属性都一样,因此mv命令也用来对文件重命名。
rm命令的参数可以是文件,可以是目录,也可以同时包含文件和目录,参数之间用空格隔开即可。
选项
mv命令的选项和cp命令的选项差不多,“-i”交互、“-n”不覆盖、“-f”强制、“-u”更新,这里不再赘述。我们讲一个“-b”备份选项,cp命令也有这个选项。
首先我们新建一个空文件。
然后将1.txt移动到同目录下的2.txt,由于2.txt已经存在,所以默认会覆盖2.txt原来的内容。这个时候我们添加“-b”选项,系统会在覆盖之前,生成2.txt的备份文件。
可以看到,目录下多了个2.txt~的文件,这就是原来2.txt文件的备份,所以用cat命令查看是没有内容的。
另外,再介绍一个“-t”选项,用于指定移动的目标目录,然后将目标目录后的所有文件移动到目标目录中。
指定目标目录为test目录,然后将test目录后跟随的1,2,3全部移动到其中。
当然也可以不使用“-t”选项,使用默认语法就可以完成以上工作。但是使用“-t”选项指定目标目录,在一定程度上能够方便大家快速理解命令的含义,这个在具体工作中,各位校友可以根据自己习惯来使用。
mv命令大家平时可能听的少,但rm命令我相信大家听过肯定不止一两次。什么输错命令宕机,什么从删库到跑路,基本和rm命令有关。
眼尖的校友可能注意到,我在讲参数的时候,用rm命令删除的是文件,而不是目录,因为rm命令默认情况下是不删除目录的。
可以看到,系统明确提示无法删除,因为test是一个目录。如果想要删除目录,就必需添加“-r”选项。
但是mv命令对目录进行操作,不需要“-r”选项。
不添加“-r”选项,mv命令依然将test目录移动到了Desktop目录。
Linux有大量的命令,不同命令,选项各不相同。大家刚接触可能会存在记混或容易遗忘的情况,这很正常,多敲几遍就会越来越熟练的。
“-r”选项是rm命令使用很频繁的选项,另外一个使用很频繁的选项是“-f”选项。
可以看到,在使用了“-f”选项后,系统没有任何提示直接将指定的文件和目录都删除了,这也是“rm -rf”命令经常出事的原因。
最后要提醒的是,执行rm命令默认是不提示的,我这里提示是因为我设置了执行rm命令会附带“-i”选项。
这种叫做别名,执行rm命令其实是在执行“rm -i”。所以有的校友在执行rm命令时,系统没有提示就直接把文件给删除了,遇到这种情况不必惊慌,设置一下就好了。另外出于安全考虑,也建议设置提示。
知识总结
1 | 语法: |
实在是对不住各位校友,最近工作上事情比较多,加班没停过,短短几百字写了一个多月。今天安全形势比以往都严峻,可能没办法做到像去年一样,一周一篇或两周一篇,但我会努力抽时间码字,尽可能的缩短文章发布周期。
安全小白团,旨在帮助大家了解信息安全。文章内容偏向基础知识,希望能帮助更多的安全爱好者打开信息安全的大门。书山有路勤为径,学海无涯苦作舟。安全小白团,永远与你同在。
免责声明
安全小白团是帮助用户了解信息安全技术、安全漏洞相关信息的微信公众号。安全小白团提供的程序(方法)可能带有攻击性,仅供安全研究与教学之用,用户将其信息做其他用途,由用户承担全部法律及连带责任,安全小白团不承担任何法律及连带责任。