MV移动和CP复制

发布时间 2023-11-16 18:17:42作者: 惠恒博

mv

基本概述

mv命令来自英文单词”move“的缩写,中文译为”移动“,其功能与英文含义相同,能够用于对文件进行剪切和重命名操作。这是一个被高频使用的文件管理命令,我们需要留意它与复制命令的区别。cp命令是用于文件的复制操作,文件个数是增加的,而mv则为剪切操作,也就是对文件进行移动(搬家)操作,文件位置发生变化,但总个数并无增加。而在同一个目录内对文件进行剪切的操作,实际应理解成重命名操作。

语法格式

mv  [参数]   源文件名 目标文件名

常用参数

-b:覆盖前为目标文件创建备份

-f:强制覆盖目标文件而不询问

-i:覆盖目标文件前询问用户是否确认

-n:不要覆盖已有文件

-u:当源文件比目标文件更新时,才执行覆盖操作

-v:显示执行过程详细信息

-Z:设置文件安全上下文

--help:显示帮助信息

--version:显示版本信息

参考示例

1.对指定文件进行剪切后粘贴(重命名)操作:

[root@linuxcool ~]# mv File1.cfg File2.cfg

2.将指定文件移动到/etc目录中,保留文件原始名称:

[root@linuxcool ~]# mv File2.cfg /etc

3.将指定目录移动到/etc目录中,并定义新的目录名称:

[root@linuxcool ~]# mv Dir1 /etc/Dir2

4.将/home目录中所有的文件都移动到当前工作目录中,遇到已存在文件则直接覆盖:

[root@linuxcool ~]# mv -f /home/* .

5.在移动时候,可支持多个目录或文本文件,永远会把最后一个目录作为目标

[root@linuxcool ~]# mv  /mnt/hehe.txt   /mnt/nsd06/   /opt/

cp

基本概述

cp命令来自英文单词“copy”的缩写,中文译为“复制”,其功能是用于复制文件或目录。cp命令能够将一个或多个文件或目录复制到指定位置,常用于文件的备份工作。-r参数用于递归操作,复制目录时若忘记添加则会直接报错,而-f参数则用于当目标文件已存在时会直接覆盖不再询问,这两个参数尤为常用。

语法格式

cp [参数] 源文件名 目标文件名

常用参数

-a:功能等价于“pdr”参数组合

-b:覆盖目标文件前先进行备份

-d:复制链接文件时,将目标文件也建立成链接文件

-f:若目标文件已存在,则会直接覆盖

-i:若目标文件已存在,则会询问是否覆盖

-l:对源文件建立硬链接,而非复制文件

-p:保留源文件或目录的所有属性信息

-r:递归复制,目录必须加此选项

-s:对源文件建立软链接,而非复制文件

-v:显示执行过程详细信息

注意:默认系统做了 alias别名功能,当我们输入cp的时候,其实就是输入 cp -i

参考示例

1.在本次操作,临时取消别名

]# \cp  -r  /home/   /opt/      #在本次操作,临时取消别名

2.复制指定源文件,并定义新文件名称

[root@linuxcool ~]# cp  File1.cfg   File2.cfg

3.复制指定源目录,并定义新目录名称

[root@linuxcool ~]# cp -r  Dir1   Dir2

4.复制文件时,保留其原始权限及用户归属信息

[root@linuxcool ~]# cp -a File1.cfg File2.cfg

5.将指定文件复制到/etc目录中,并覆盖已有文件,不进行询问:

[root@linuxcool ~]# cp -f File1.cfg /etc

6.将多个文件一同复制到/etc目录中,如已有目标文件名称则默认询问是否覆盖:

[root@linuxcool ~]# cp File1.cfg File2.cfg /etc
cp: overwrite '/etc/File1.cfg'? y