mv、rm

01 命令简介


之前我们已经讲了文件和目录的创建及复制,今天我们来讲一讲剪切和删除。

mv——移动、重命名文件

每日命令 | mv、rm

rm——删除文件

每日命令 | mv、rm

02 命令详解


语法
mv [选项] 参数1 参数2
rm [选项] 参数

mv,move的缩写,移动;rm,remove的缩写,删除。这样介绍,相信校友们更容易理解和记忆命令的用途。

参数
mv [选项] 源文件 目标文件

在语法上,mv命令和cp命令其实很相似。选项和参数都差不多,也有三种模式。

不同的是,cp命令是在另一个地方复制一份文件,整个计算机就有了两份内容一样的文件;而mv命令是将文件移动到另一个地方,整个计算机还是只有一份这样的文件。

每日命令 | mv、rm

注意,对文件执行mv命令,不会更新文件的时间属性。

每日命令 | mv、rm

但是执行cp命令,默认情况下会更新文件的时间属性。

每日命令 | mv、rm

除了名字不一样,内容、时间属性都一样,因此mv命令也用来对文件重命名。

rm命令的参数可以是文件,可以是目录,也可以同时包含文件和目录,参数之间用空格隔开即可。

每日命令 | mv、rm

选项

mv命令的选项和cp命令的选项差不多,“-i”交互、“-n”不覆盖、“-f”强制、“-u”更新,这里不再赘述。我们讲一个“-b”备份选项,cp命令也有这个选项。

首先我们新建一个空文件。

每日命令 | mv、rm

然后将1.txt移动到同目录下的2.txt,由于2.txt已经存在,所以默认会覆盖2.txt原来的内容。这个时候我们添加“-b”选项,系统会在覆盖之前,生成2.txt的备份文件。

每日命令 | mv、rm

可以看到,目录下多了个2.txt~的文件,这就是原来2.txt文件的备份,所以用cat命令查看是没有内容的。

另外,再介绍一个“-t”选项,用于指定移动的目标目录,然后将目标目录后的所有文件移动到目标目录中。

每日命令 | mv、rm

指定目标目录为test目录,然后将test目录后跟随的1,2,3全部移动到其中。

每日命令 | mv、rm

当然也可以不使用“-t”选项,使用默认语法就可以完成以上工作。但是使用“-t”选项指定目标目录,在一定程度上能够方便大家快速理解命令的含义,这个在具体工作中,各位校友可以根据自己习惯来使用。

mv命令大家平时可能听的少,但rm命令我相信大家听过肯定不止一两次。什么输错命令宕机,什么从删库到跑路,基本和rm命令有关。

眼尖的校友可能注意到,我在讲参数的时候,用rm命令删除的是文件,而不是目录,因为rm命令默认情况下是不删除目录的。

每日命令 | mv、rm

可以看到,系统明确提示无法删除,因为test是一个目录。如果想要删除目录,就必需添加“-r”选项。

每日命令 | mv、rm

但是mv命令对目录进行操作,不需要“-r”选项。

每日命令 | mv、rm

不添加“-r”选项,mv命令依然将test目录移动到了Desktop目录。

Linux有大量的命令,不同命令,选项各不相同。大家刚接触可能会存在记混或容易遗忘的情况,这很正常,多敲几遍就会越来越熟练的。

“-r”选项是rm命令使用很频繁的选项,另外一个使用很频繁的选项是“-f”选项。

每日命令 | mv、rm

可以看到,在使用了“-f”选项后,系统没有任何提示直接将指定的文件和目录都删除了,这也是“rm -rf”命令经常出事的原因。

最后要提醒的是,执行rm命令默认是不提示的,我这里提示是因为我设置了执行rm命令会附带“-i”选项。

每日命令 | mv、rm

这种叫做别名,执行rm命令其实是在执行“rm -i”。所以有的校友在执行rm命令时,系统没有提示就直接把文件给删除了,遇到这种情况不必惊慌,设置一下就好了。另外出于安全考虑,也建议设置提示。

03 知识总结


语法: 
mv [选项] 参数1 参数2
rm [选项] 参数
用途:
mv——移动、重命名文件
rm——删除文件
选项:mv:-i——交互
-n——不覆盖
-u——更新
-f——强制
-b——备份
-t——指定目标目录
rm:-r、-R——删除目录
-f——强制
-d——删除空目录
其他:alias——别名

实在是对不住各位校友,最近工作上事情比较多,加班没停过,短短几百字写了一个多月。今天安全形势比以往都严峻,可能没办法做到像去年一样,一周一篇或两周一篇,但我会努力抽时间码字,尽可能的缩短文章发布周期。

安全小白团,旨在帮助大家了解信息安全。文章内容偏向基础知识,希望能帮助更多的安全爱好者打开信息安全的大门。书山有路勤为径,学海无涯苦作舟。安全小白团,永远与你同在。


分享到:


相關文章: