LINUX學習(七)Linux檔案的複製、刪除和移動命令

楊奇龍發表於2010-05-29

      cp命令
  該命令的功能是將給出的檔案或目錄複製到另一檔案或目錄中,就如同DOS下的copy命令一樣,功能非常強大。
  語法: cp [選項] 原始檔或目錄 目標檔案或目錄
  說明:該命令把指定的原始檔複製到目標檔案或把多個原始檔複製到目標目錄中。
  該命令的各選項含義如下:
  - a 該選項通常在複製目錄時使用。它保留連結、檔案屬性,並遞迴地複製目錄,其作用等於dpR選項的組合。
  - d 複製時保留連結。
  - f 刪除已經存在的目標檔案而不提示。
  - i 和f選項相反,在覆蓋目標檔案之前將給出提示要求使用者確認。回答y時目標檔案將被覆蓋,是互動式複製。
  - p 此時cp除複製原始檔的內容外,還將把其修改時間和訪問許可權也複製到新檔案中。
  - r 若給出的原始檔是一目錄檔案,此時cp將遞迴複製該目錄下所有的子目錄和檔案。此時目標檔案必須為一個目錄名。
  - l 不作複製,只是連結檔案。
  需要說明的是,為防止使用者在不經意的情況下用cp命令破壞另一個檔案,如使用者指定的目標檔名是一個已存在的檔名,用cp命令複製檔案後,這個檔案就會被新複製的原始檔覆蓋,因此,建議使用者在使用cp命令複製檔案時,最好使用i選項。
  $ cp - i exam1.c /usr/wang/shiyan1.c
  該命令將檔案exam1.c複製到/usr/wang 這個目錄下,並改名為 shiyan1.c。若不希望重新命名,可以使用下面的命令:
  $ cp exam1.c /usr/ wang/
  $ cp - r /usr/xu/ /usr/liu/ 將/usr/xu目錄中的所有檔案及其子目錄複製到目錄/usr/liu中。

  mv命令
  使用者可以使用mv命令來為檔案或目錄改名或將檔案由一個目錄移入另一個目錄中。該命令如同DOS下的ren和move的組合。
  語法:mv [選項] 原始檔或目錄 目標檔案或目錄
  說明:視mv命令中第二個引數型別的不同(是目標檔案還是目標目錄),mv命令將檔案重新命名或將其移至一個新的目錄中。當第二個引數型別是檔案時,mv命令完成檔案重新命名,此時,原始檔只能有一個(也可以是源目錄名),它將所給的原始檔或目錄重新命名為給定的目標檔名。當第二個引數是已存在的目錄名稱時,原始檔或目錄引數可以有多個,mv命令將各引數指定的原始檔均移至目標目錄中。在跨檔案系統移動檔案時,mv先複製,再將原有檔案刪除,而鏈至該檔案的連結也將丟失。
  命令中各選項的含義為:
  - I 互動方式操作。如果mv操作將導致對已存在的目標檔案的覆蓋,此時系統詢問是否重寫,要求使用者回答y或n,這樣可以避免誤覆蓋檔案。
  - f 禁止互動操作。在mv操作要覆蓋某已有的目標檔案時不給任何指示,指定此選項後,i選項將不再起作用。
  如果所給目標檔案(不是目錄)已存在,此時該檔案的內容將被新檔案覆蓋。為防止使用者在不經意的情況下用mv命令破壞另一個檔案,建議使用者在使用mv命令移動檔案時,最好使用i選項。
  需要注意的是,mv與cp的結果不同。mv好象檔案“搬家”,檔案個數並末增加,而cp對檔案進行復制,檔案個數增加了。
  例1:將/usr/xu中的所有檔案移到當前目錄(用“.”表示)中:
  $ mv /usr/xu/ * .
  例2:將檔案wch.txt重新命名為wjz.doc
  $ mv wch.txt wjz.doc

  rm命令
  在linux中建立檔案很容易,系統中隨時會有檔案變得過時且毫無用處。使用者可以用rm命令將其刪除。該命令的功能為刪除一個目錄中的一個或多個檔案或目錄,它也可以將某個目錄及其下的所有檔案及子目錄均刪除。對於連結檔案,只是刪除了連結,原有檔案均保持不變。
  rm命令的一般形式為:
  rm [選項] 檔案…
  如果沒有使用- r選項,則rm不會刪除目錄。
  該命令的各選項含義如下:
  - f 忽略不存在的檔案,從不給出提示。
  - r 指示rm將引數中列出的全部目錄和子目錄均遞迴地刪除。
  - i 進行互動式刪除。

  使用rm命令要格外小心。因為一旦一個檔案被刪除,它是不能被恢復的。例如,使用者在輸入cp,mv或其他命令時,不小心誤輸入了rm命令,當使用者按了Enter鍵並認識到自己的錯誤時,已經太晚了,檔案已經沒有了。為了防止此種情況的發生,可以使用rm命令中的 i選項來確認要刪除的每個檔案。如果使用者輸入y,檔案將被刪除。如果輸入任何其他東西,檔案將被保留。在下一個例子中,使用者要刪除檔案test和example。然後會被要求對每個檔案進行確認。使用者最終決定刪除example檔案,保留test檔案。
  $ rm - ii test example Remove test ? n
  Remove example ? y

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/22664653/viewspace-663971/,如需轉載,請註明出處,否則將追究法律責任。

相關文章