一天乙個Linux命令 cp

2021-08-01 06:51:21 字數 1889 閱讀 5200

cp命令用來將乙個或多個原始檔或者目錄複製到指定的目的檔案或目錄。它可以將單個原始檔複製成乙個指定檔名的具體的檔案或乙個已經存在的目錄下。cp命令還支援同時複製多個檔案,當一次複製多個檔案時,目標檔案引數必須是乙個已經存在的目錄,否則將出現錯誤。

一般情況下,在命令列下複製檔案時,如果目標檔案已經存在,就會詢問是否覆蓋,不管你是否使用-i引數。但是如果是在shell指令碼中執行cp時,沒有-i引數時不會詢問是否覆蓋。這說明命令列和shell指令碼的執行方式有些不同。

語法

cp (選項) (引數)

選項

-a:(all)此引數的效果和同時指定」-dpr」引數相同;

-d:當複製符號連線時,把目標檔案或目錄也建立為符號連線,並指向與原始檔或目錄連線的原始檔案或目錄;

-f:(force)強行複製檔案或目錄,不論目標檔案或目錄是否已存在;

-i:(inform)覆蓋既有檔案之前先詢問使用者;

-l:(link)對原始檔建立硬連線,而非複製檔案;

-p:(preserve)保留原始檔或目錄的屬性;

-r/r:(recursion)遞迴處理,將指定目錄下的所有檔案與子目錄一併處理;

-s:(symbolic link)對原始檔建立符號連線,而非複製檔案;

-u:使用這項引數後只會在原始檔的更改時間較目標檔案更新時或是名稱相互對應的目標檔案並不存在時,才複製檔案;

-s:在備份檔案時,用指定的字尾「suffix」代替檔案的預設字尾;

-b:(backup)覆蓋已存在的檔案目標前將目標檔案備份;

-v:(verbol)詳細顯示命令執行的操作。

引數

原始檔:制定原始檔列表。預設情況下,cp命令不能複製目錄,如果要複製目錄,則必須使用-r選項;

目標檔案:指定目標檔案。當「原始檔」為多個檔案時,要求「目標檔案」為指定的目錄。

例項

如果把乙個檔案複製到乙個目標檔案中,而目標檔案已經存在,那麼,該目標檔案的內容將被破壞。此命令中所有引數既可以是絕對路徑名,也可以是相對路徑名。通常會用到點.或點點..的形式。例如,下面的命令將指定檔案複製到當前目錄下:

cp ../mary/homework/assign .

所有目標檔案指定的目錄必須是己經存在的,cp命令不能建立目錄。如果沒有檔案複製的許可權,則系統會顯示出錯資訊。

將檔案file複製到目錄/usr/men/tmp下,並改名為file1

cp file /usr/men/tmp/file1

將目錄/usr/men下的所有檔案及其子目錄複製到目錄/usr/zh中

cp -r /usr/men /usr/zh

互動式地將目錄/usr/men中的以m打頭的所有.c檔案複製到目錄

/usr/zh中 cp -i /usr/men m*.c /usr/zh

cp aaa/* /bbb 

複製目錄aaa下所有到/bbb目錄下,這時如果/bbb目錄下有和aaa同名的檔案,需要按y來確認並且會略過aaa目錄下的子目錄。

cp -r aaa/* /bbb

這次依然需要按y來確認操作,但是沒有忽略子目錄。

cp -r -a aaa/* /bbb

依然需要按y來確認操作,並且把aaa目錄以及子目錄和檔案屬性也傳遞到了/bbb。

\cp -r -a aaa/* /bbb

成功,沒有提示按y、傳遞了目錄屬性、沒有略過目錄。

一天乙個linux命令 find

find命令用來在指定目錄下查詢檔案。任何位於引數之前的字串都將被視為欲查詢的目錄名。如果使用該命令時,不設定任何引數,則find命令將在當前目錄下查詢子目錄與檔案,返回目錄或檔名稱。並且將查詢到的子目錄和檔案全部進行顯示。find starting point option print exec ...

一天乙個linux命令 (7)

1.建立使用者組 groupadd r g o r f groupname groupadd r group1 2.刪除使用者分組 groupdel group1 3.gpasswd a 將某個使用者添 組中 d 將某個使用者從群組中刪除 a 將群組的管理員許可權交給某個使用者 r 使群組的密碼失效...

一天乙個linux命令 export

shell程式設計中的命令有時和c語言是一樣的。表示與,表示或。把兩個命令用 聯接起來,如 make mrproper make menuconfig 表示要第乙個命令執行成功才能執行第二個命令。對執行順序有要求的命令能保證一旦有錯誤發生,下面的命令不會盲目地繼續執行。一天乙個 linux命令 ex...