2021-02-06 分類: 網(wǎng)站建設(shè)
1. 前言
本文主要講解Linux系統(tǒng)如何使用命令行工具把文件復(fù)制到另一個文件夾或者目錄。
linux復(fù)制文件到另一個文件夾
2. cp命令的選項(xiàng)和功能
copy命令的功能是將給出的文件或目錄拷貝到另一文件或目錄中,同MSDOS下的copy命令一樣,功能十分強(qiáng)大。
語法: cp [選項(xiàng)] 源文件或目錄 目標(biāo)文件或目錄
說明:該命令把指定的源文件復(fù)制到目標(biāo)文件或把多個源文件復(fù)制到目標(biāo)目錄中。
該命令的各選項(xiàng)含義如下:
- a 該選項(xiàng)通常在拷貝目錄時使用。它保留鏈接、文件屬性,并遞歸地拷貝目錄,其作用等于dpR選項(xiàng)的組合。
- d 拷貝時保留鏈接。
- f 刪除已經(jīng)存在的目標(biāo)文件而不提示。
- i 和f選項(xiàng)相反,在覆蓋目標(biāo)文件之前將給出提示要求用戶確認(rèn)?;卮饄時目標(biāo)文件將被覆蓋,是交互式拷貝。
- p 此時cp除復(fù)制源文件的內(nèi)容外,還將把其修改時間和訪問權(quán)限也復(fù)制到新文件中。
- r 若給出的源文件是一目錄文件,此時cp將遞歸復(fù)制該目錄下所有的子目錄和文件。此時目標(biāo)文件必須為一個目錄名。
- l 不作拷貝,只是鏈接文件。
案例1:
復(fù)制指定目錄下的全部文件到另一個目錄中
文件及目錄的復(fù)制是經(jīng)常要用到的。linux下進(jìn)行復(fù)制的命令為cp。
假設(shè)復(fù)制源目錄 為 dir1 ,目標(biāo)目錄為dir2。怎樣才能將dir1下所有文件復(fù)制到dir2下了
如果dir2目錄不存在,則可以直接使用
[root@zcwyou ~]# cp -r dir1 dir2
即可。
如果dir2目錄已存在,則需要使用
[root@zcwyou ~]# cp -r dir1/. dir2
如果這時使用cp -r dir1 dir2,則也會將dir1目錄復(fù)制到dir2中,明顯不符合要求。
ps:dir1、dir2改成對應(yīng)的目錄路徑即可。
案例2:
復(fù)制指定文件到指定文件夾
首先建立一個用于測試的目錄,用'tree'命令查看
可見,目錄中主要包含用于測試的.txt文件和用于充當(dāng)炮灰的。tes文件
目標(biāo)是保持當(dāng)前的目錄結(jié)構(gòu),只把txt文件復(fù)制出來
本文將會以兩種情況作案例說明。
比如要把A文件夾復(fù)制到B文件夾內(nèi)。比如A內(nèi)的文件是:
- A/ .hi.txt a1.txt shadow.json - dir1/ dir1.txt
即A目錄有 .hi.txt, a1.txt,shadow.json三個文件及一個子目錄dir1,dir1里含有一個文件dir1.txt。
3. 案例1:把`A`文件夾內(nèi)的所有文件復(fù)制到`B`文件夾內(nèi)
linux復(fù)制文件到另一個目錄
我們的目標(biāo):復(fù)制操作后B文件夾的內(nèi)容和原來A文件夾一樣:
- B/ .hi.txt a1.txt shadow.json - dir1/ dir1.txt
4. 案例2:把`A`文件夾本身復(fù)制到`B`文件夾內(nèi)
操作目標(biāo):復(fù)制完成后,B文件夾的要包含原來的A文件夾:
- B/ - A/ .hi.txt a1.txt shadow.json - dir1/ dir1.txt
5. 復(fù)制文件操作過程演示
第一種案例的命令,也就是把文件夾A中的所有內(nèi)容復(fù)制到B文件夾中,即B與A的內(nèi)容一樣。
[root@zcwyou ~]# cp -a A/. B
第二種案例的命令,也就是把文件夾A中的所有內(nèi)容復(fù)制成B文件夾中,即B包含A的所有內(nèi)容。
[root@zcwyou ~]# cp -a A B
需要解釋的點(diǎn):
6. 只復(fù)制指定文件的方法
繼續(xù)上面的例子,A文件夾:
- A/ .hi.txt a1.txt shadow.json - dir1/ dir1.txt
如果想要復(fù)制指定文件,可以在文件夾后面加入篩選字符,比如,篩選所有的.txt:
[root@zcwyou ~]# cp -a A/*.txt B
執(zhí)行完畢后,B目錄是:
- B/ a1.txt
需要注意的問題:
7. 一次復(fù)制指定指定的多個文件
cp同時也支持手動指定多個文件,繼續(xù)上面的例子,A文件夾:
- A/ .hi.txt a1.txt shadow.json - dir1/ dir1.txt
執(zhí)行cp:
[root@zcwyou ~]# cp -a A/.hi.txt A/dir1/dir1.txt B
執(zhí)行完畢后,B目錄是:
- B/ .hi.txt dir1.txt
需要注意的問題:
8. 復(fù)制時強(qiáng)制覆蓋原文件
linux復(fù)制文件時強(qiáng)制覆蓋原文件
cp默認(rèn)會立即覆蓋目標(biāo)文件(如果存在的話),不做任何提示。
如果想要cp在覆蓋文件前做提示,請使用-i命令,即cp -i,示例:覆蓋文件前做提示
[root@zcwyou ~]# cp -i -a documents/. backup/
如果出現(xiàn)沒有加-i參數(shù),但cp仍然會提示覆蓋的問題(比如會提示類似這種消息:cp: overwrite dir/a.txt?)??赡苁莄p命令被別名化,請使用\cp來運(yùn)行命令。
強(qiáng)制不允許覆蓋文件前提示
[root@zcwyou ~]# \cp -a documents/. backup/
9. 總結(jié)
cp命令是Linux系統(tǒng)里最最為常用的命令,系統(tǒng)運(yùn)維者必須掌握它的所有功能和語法。linux復(fù)制文件到另一個文件夾或目錄更是最常用的功能之一。
分享文章:Linux如何使用命令行高效地復(fù)制文件到指定目錄
當(dāng)前路徑:http://www.rwnh.cn/news/99522.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供小程序開發(fā)、網(wǎng)站導(dǎo)航、網(wǎng)站設(shè)計公司、企業(yè)網(wǎng)站制作、面包屑導(dǎo)航、做網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容