1. 程式人生 > >cp命令

cp命令

linux 命令文檔

cp 命令

該命令是將給出的目錄或文件拷貝到目標目錄,相當於windows系統中的復制功能

語法: cp [選項] 源文件或目錄 目標路徑

用法: Copy SOURCE to DEST, or multiple SOURCE(s) to DIRECTORY.

拷給源文件到目標目錄,或者備份一個或多個文件到目標目錄

常用選項:

- a 該選項通常在拷貝目錄時使用。它保留鏈接、文件屬性,並遞歸地拷貝目錄,其作用等於dpR選項的組合。(復制的時候要保留文件屬性用-a,不然會導致服務無法應用等問題,例如在root用戶下原文件擁有者為dzq,直接cp後文件擁有者變為root,會導致數據庫服務器無法使用,可以使用chown修改文件擁有者,或者復制的時候直接用cp -a命令)

- d 拷貝時保留鏈接。

- f 刪除已經存在的目標文件而不提示。

- i 和f選項相反,在覆蓋目標文件之前將給出提示要求用戶確認。回答y時目標文件將被覆蓋,是交互式拷貝。

- p 此時cp除復制源文件的內容外,還將把其修改時間和訪問權限也復制到新文件中。

- r 若給出的源文件是一目錄文件,此時cp將遞歸復制該目錄下所有的子目錄和文件。此時目標文件必須為一個目錄名。

舉例:

  1. 拷貝 /data 目錄下的test.txt到/tmp下: cp /data/test.txt /tmp (註意 /tmp前有空格)

2. 交互式拷貝:如果目標文件已經在目標路徑下已經存在 執行 cp /data/test.txt /tmp時會出現提示:

cp: overwrite `/tmp/test.txt‘? 提問是否覆蓋? 此時輸入 y為覆蓋,n為不覆蓋.此為交互式拷貝

3. -f舉例 如果希望命令執行過程中不做任何提示,即使出現2例中目標文件已存在的情況,也直接強制覆蓋,而不出現提示,則用到-f選項 執行: cp -f /data/test.txt /tmp

4. -i舉例 如果確定在覆蓋目標文件時需要交互確認,則使用 -i選項cp -i /data/test.txt /tmp

5 -r舉例 如果拷貝時,拷貝的是一個目錄下的所有文件及目錄,則需要使用 -r選項,同時要求目標文件必須為一個目錄明 例: cp -r /data /tmp 總結:如果要拷貝一個目錄下的所有文件到另一個路徑時 常使用-rf兩個選項結合. 如cp -rf /data /tmp


其他選項根據需要使用即可不做解釋.




cp命令