首頁  >  文章  >  運維  >  linux cp指令有什麼用

linux cp指令有什麼用

青灯夜游
青灯夜游原創
2022-11-23 19:11:158290瀏覽

在linux中,cp指令用於複製檔案或目錄,可以將一個或多個來源檔案或目錄複製到指定的目的檔案或目錄,語法「cp [選項] 原始檔 目標檔案」。 cp指令支援同時複製多個文件,當一次複製多個文件時,目標文件參數必須是一個已經存在的目錄,否則會發生錯誤。

linux cp指令有什麼用

本教學操作環境:linux7.3系統、Dell G3電腦。

Linux cp指令

cp 指令主要用於複製檔案或目錄。即用來將一個或多個來源檔案或目錄複製到指定的目的檔案或目錄。

cp 指令可以將單一來源檔案複製成一個指定檔案名稱的特定的檔案或一個已經存在的目錄下。

cp 指令支援同時複製多個文件,當一次複製多個文件時,目標文件參數必須是一個已經存在的目錄,否則會出現錯誤。

cp 指令語法

cp [-options] source_file dest_file
  • source_file:來源文件,制定原始檔清單。 cp 指令預設不能複製目錄,除非使用 -r/-R選項。

  • dest_file:目標文件,指定目標文件。當「來源檔案」為多個檔案時,要求「目標檔案」為指定的目錄。

參數說明:

  • -a :等於「dpR」 參數組合,通常在複製目錄時保留連結、檔案屬性,並複製目錄下的所有內容。
  • -b:在覆蓋已存在的檔案目標前將目標檔案備份;
  • -d :複製時保留符號連結。
  • -f :強行複製檔案或目錄,覆蓋已經存在的目標檔案而不給予提示。
  • -i :與-f選項相反,在覆蓋目標檔案之前給予提示,要求使用者確認是否覆蓋。
  • -l :不複製文件,只是產生原始檔案的硬連結檔案。
  • -p :複製檔案時保留來源檔案或目錄的屬性。
  • -r :遞歸複製目錄,即複製該目錄及其所有的子目錄和檔案。
  • -R :同 -r 選項參數。
  • -s:對來源檔案建立符號連接,而非複製檔案;
  • -S:在備份檔案時,用指定的後綴「SUFFIX」取代檔案的預設後綴;
  • -u:同步複製來源檔案,只在來源檔案更新時或目標檔案不存在時複製。
  • -v:詳細顯示命令執行的操作。

cp指令的使用範例

Linux中使用cp指令複製檔案(夾),本文就日常工作中常用的cp指令整理如下。

一、複製一個原始檔到目標檔案(夾)

#指令格式為:cp 原始檔目標檔案(夾)

這個是使用頻率最多的指令,負責把一個來源檔案複製到目標檔案(夾)下。如下圖所示,複製到資料夾下,則檔案名稱保持不變,複製到檔案中,則檔案名稱變更。如果目標文件已經存在或目標資料夾中含有同名文件,則複製之後目標文件或目標資料夾中的同名文件會被覆寫。

linux cp指令有什麼用

二、同時複製多個檔案到目標檔案(夾)下

#指令格式為:<span class="bjh-strong">cp 來源檔案1 來源檔案2 目標資料夾</span>或<span class="bjh-strong"> cp 檔案* 目標資料夾</span>

這個指令使用頻率也很高。第一種指令格式可以把列出來的多個檔案一次複製到目標資料夾下,每個檔案直接用空格分隔;第二種指令格式使用了通配符*,如下圖所示,可以將所有以“ .txt”結尾的檔案都複製到資料夾testDir下。

linux cp指令有什麼用

linux cp指令有什麼用
#

三、複製來源資料夾到目標資料夾下

#指令格式為:cp -r 來源資料夾目標文件夾

這個也是使用頻率很高的指令,只需要記住複製資料夾一定要加「-r」參數,否則會出現「cp: omitting directory」錯誤。

linux cp指令有什麼用

#四、只有來源檔案較目標檔案新時複製

#指令格式為:cp -u 原始檔目標檔

#這個指令很實用,尤其是在更新檔案時。如下圖所示,只有來源文件比目標文件新時,才會將來源文件複製給目標文件,否則,及時執行了命令,也不會執行複製。

linux cp指令有什麼用

#五、建立檔案的軟連結

#指令格式為:cp -s 原始檔目標檔

#也可以用ln指令實作同樣的功能。當一個文件路徑太深(如下述的a/b/c/d/e/orginalFile.txt),訪問起來十分不方便時,就會創建這個文件的軟鏈接,使之訪問起來更方便些。軟連結就相當於windows上的快捷方式。

linux cp指令有什麼用

#六、建立檔案的硬連結

#指令格式為:cp -l 原始檔目標檔

#也可以用ln指令實作同樣的功能。有時候,為了某種原因,需要建立一個硬鏈接,如下圖所示。

linux cp指令有什麼用

這裡簡單介紹下硬連結和軟連結的差異。如下圖所示,軟連結檔案(softLink.txt)和被連結檔案(orginalFile.txt)所擁有的inode不相同(133827和139819),硬連結檔案(hardLink.txt)和被連結的檔案(orginalFile22. txt)擁有相同的inode(156981)。當被連結的檔案刪除時,軟連結檔案也無法存取了,而硬連結檔案仍能正常存取。

linux cp指令有什麼用
軟體連結與硬連結差異

相關推薦:《Linux影片教學

以上是linux cp指令有什麼用的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn