cp:復制文件和目錄


cp 命令,主要用來復制文件和目錄,同時借助某些選項,還可以實現復制整個目錄,以及比對兩文件的新舊而予以升級等功能。

cp 命令的基本格式如下:cp [選項] 源文件 目標目錄/文件

選項:

  • -a:相當於 -d、-p、-r 選項的集合,這幾個選項我們一一介紹;
  • -d:如果源文件為軟鏈接(對硬鏈接無效),則復制出的目標文件也為軟鏈接;
  • -i:詢問,如果目標文件已經存在,則會詢問是否覆蓋;
  • -l:把目標文件建立為源文件的硬鏈接文件,而不是復制源文件;
  • -s:把目標文件建立為源文件的軟鏈接文件,而不是復制源文件;
  • -p:復制后目標文件保留源文件的屬性(包括所有者、所屬組、權限和時間);
  • -r:遞歸復制,用於復制目錄;
  • -u:若目標文件比源文件有差異,則使用該選項可以更新目標文件,此選項可用於對文件的升級和備用。

當源文件可以有多個,但這種情況下,目標文件必須是目錄才可以。

這里的軟鏈接,類似於 Windows 系統中的快捷方式,而硬鏈接則是透過文件系統的 inode 號產生一個新的文件名。無論是復制軟鏈接還是硬鏈接,都不是復制源文件。

cp 命令既可以復制文件,也可以復制目錄。我們先來看看如何復制文件,例如:

[root@localhost ~]# touch cangls
#建立源文件
[root@localhost ~]# cp cangls /tmp/
#把源文件不改名復制到 /tmp/ 目錄下

 

改名復制,則命令如下:

[root@localhost ~]# cp cangls /tmp/bols
#改名復制

 

如果復制的目標位置已經存在同名的文件,則會提示是否覆蓋,因為 cp 命令默認執行的是“cp -i”的別名,例如:

[root@localhost ~]# cp cangls /tmp/
cp:是否覆蓋"/tmp/cangls"?y
#目標位置有同名文件,所以會提示是否覆蓋

 

復制目錄,其實復制目錄只需使用“-r”選項即可,例如:

[root@localhost ~]# mkdir movie
#建立測試目錄
[root@localhost ~]# cp -r /root/movie/ /tmp/
#目錄原名復制

 


免責聲明!

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



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