cp 命令  

作用


cp 复制命令,用于系统间文件或者目录的复制


用法


Usage: cp [OPTION]... [-T] SOURCE DEST


参数说明

-a 或 --archive     此参数的效果和同时指定"-dpR"参数相同

 -b 或 --backup      删除、覆盖目的文件先备份,备份的文件或目录亦建立为符号链接,并指向源文件或目录链接的源文件或目录。假如没有加上这个参数,在复制过程中若遇到符号链接,则会直接复制源文件或目录

-f 或 --force       强行复制文件或目录, 不论目的文件或目录是否已经存在

-i 或 --interactive 覆盖文件之前先询问用户

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

-p 或 --preserve    保留源文件或目录的属性,包括所有者、所属组、权限与时间

-P 或 --parents     保留源文件或目录的路径,此路径可以是绝对路径或相对路径,且目的目录必须已经存在

-r                 递归处理,将指定目录下的文件与子目录一并处理。若源文件或目录的形态,不属于目录或符号链接,则一律视为普通文件处理
 
-R 或 --recursive   递归处理,将指定目录下的文件及子目录一并处理

-s 或 --symbolic-link  对源文件建立符号链接,而非复制文件

-S <备份字尾字符串> 或 --suffix=<备份字尾字符串> 用"-b"参数备份目的文件后,备份文件的字尾会被加上一个备份字符串。默认的备份字尾符串是符号"~"

-u 或 --update      使用这项参数之后,只会在源文件的修改时间(Modification Time)较目的文件更新时,或是名称相互对应的目的文件并不存在,才复制文件

-v 或 --verbose     显示执行过程


常用参数,举例说明 


复制文件


cp /etc/passwd /root/test/


查看文件属性信息


 ll /etc/passwd

-rw-r--r-- 1 root root 1058 Jan 18 18:01 /etc/passwd


ll /root/test/passwd 

-rw-r--r-- 1 root root 1058 Jan 25 09:22 passwd



复制文件并保留文件的属性信息


 cp -p /etc/passwd /root/test/


查看文件属性信息

wKioL1iH_z6i5xBdAABBdVO4jdA176.jpg-wh_50


复制文件夹内的所有文件,包括文件目录


cp -r /etc/ /root/test/


wKiom1iIAC2hS-dbAAAxXYS0fl0461.jpg-wh_50


复制文件夹内的所有文件,不包括文件目录



复制文件并备份原有的文件  


mkdir test1 test2


cat test1/1.txt 

this file is blong to test1 


cat test2/1.txt 

this  file is belong to test2


将test1 中 的1.txt 文件复制到 test2 的文件夹里面,并备份test2文件夹里面的1.txt 


cp -b -S 1_bak /root/test1/1.txt /root/test2/1.txt


命令解释


解释:将/root/test1/1.txt  拷贝到  /root/test2/ 这里 同时将/root/test2/文件夹里面的

  1. txt 备份为1.txt.bak  (源文件后缀加上1_bak )



 cat /root/test2/1.txt

this file is blong to test1


l /root/test2/

total 8

-rw-r--r-- 1 root root 28 Jan 25 10:07 1.txt

-rw-r--r-- 1 root root 30 Jan 25 09:57 1.txt1_bak


cat /root/test2/1.txt

this file is blong to test1

[root@VM_71_179_centos test2]# cat /root/test2/1.txt1_bak (备份后的文件源文件)

this  file is belong to test2