Linux之cp命令詳解


 

格式
cp [選項] 源文件 目標文件
   選項:
     -a: 相當於-dpr選項的集合
     -d: 如果源文件為軟鏈接(硬鏈接無效),復制出的目標文件也為軟鏈接
     -i: 詢問,如果目標文件已經存在,則會詢問是否覆蓋
     -l:把目標文件建立為源文件的硬鏈接文件,而不是復制源文件
     -s: 把目標文件建立為源文件的軟鏈接文件,而不是復制源文件
     -p: 復制后目標文件保留源文件的屬性(包括所有者、所屬組、權限和時間)
     -r: 遞歸復制,用於復制目錄

 

例1:基本用法

 

[root@VM-0-17-centos home]# cp aaa.txt /tmp/
#不改名復制
[root@VM-0-17-centos home]# cp aaa.txt /tmp/abc.txt
#改名復制
[root@VM-0-17-centos home]# cp aaa.txt /tmp/abc.txt 
cp:是否覆蓋"/tmp/abc.txt"? y
#默認執行cp -i

 

復制目錄

 

需要加-r參數

 

例2:復制軟鏈接屬性

 

[root@VM-0-17-centos home]# touch lianxi
[root@VM-0-17-centos home]# ln -s /home/lianxi /tmp/lianxi_h
#建立軟鏈接文件/tmp/lianxi_h
[root@VM-0-17-centos home]# ll /tmp/lianxi_h 
lrwxrwxrwx 1 root root 12 6月   2 21:50 /tmp/lianxi_h -> /home/lianxi
#接下來源文件就是軟鏈接文件
[root@VM-0-17-centos home]# cd /tmp/
[root@VM-0-17-centos tmp]# cp /tmp/lianxi_h /tmp/lianxi_h1
#復制軟鏈接文件,但是不加'-d'選項
[root@VM-0-17-centos tmp]# cp -d /tmp/lianxi_h /tmp/lianxi_h2
#復制軟鏈接文件,加入'-d'選項
[root@VM-0-17-centos tmp]# ll /tmp/lianxi_h1 /tmp/lianxi_h2
-rw-r--r-- 1 root root  0 6月   2 21:51 /tmp/lianxi_h1
#不加'-d'復制的是軟鏈接的源文件,而不是軟鏈接文件
lrwxrwxrwx 1 root root 12 6月   2 21:51 /tmp/lianxi_h2 -> /home/lianxi
#加入了'-d'選項,則會復制軟鏈接文件
例3:保留源文件屬性復制

 

[root@VM-0-17-centos mlocate]# pwd
/var/lib/mlocate
[root@VM-0-17-centos mlocate]# cp mlocate.db /tmp/
[root@VM-0-17-centos mlocate]# ll mlocate.db 
-rw-r----- 1 root slocate 3044985 6月   6 03:26 mlocate.db
#注意源文件的時間和所屬組
[root@VM-0-17-centos mlocate]# ll /tmp/mlocate.db 
-rw-r----- 1 root root 3044985 6月   6 19:32 /tmp/mlocate.db
#由於復制命令由root用戶執行,所以目標文件的所屬組變為了root,而且時間也變成了復制命令的執行時間

 

使用-p參數可以保留源文件的屬性,包括所有者、所屬組和時間。當然-a相當於-dpr也更方便

 

[root@VM-0-17-centos mlocate]# cp -a  mlocate.db /tmp/mlocate__2.db
#使用-a選項
[root@VM-0-17-centos mlocate]# ll mlocate.db /tmp/mlocate__2.db 
-rw-r----- 1 root slocate 3044985 6月   6 03:26 mlocate.db
-rw-r----- 1 root slocate 3044985 6月   6 03:26 /tmp/mlocate__2.db
#源文件和目標文件的所有屬性都一致,包括時間


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM