在linux系統(tǒng)中復(fù)制文件我們可以使用cp或copy命令了,我們要復(fù)制文件或目錄都可以使用它們兩來完成哦,下面我來給大家介紹cp或copy命令與復(fù)制目錄到指定目錄的命令吧。 ? ? copy命令 ? ? 該命令的功能是將給出的文件或目錄拷貝到另一文件或目錄中,同MSDOS下的copy命令一樣,功能十分強(qiáng)大。
創(chuàng)新互聯(lián)專注于靜安企業(yè)網(wǎng)站建設(shè),成都響應(yīng)式網(wǎng)站建設(shè)公司,商城網(wǎng)站建設(shè)。靜安網(wǎng)站建設(shè)公司,為靜安等地區(qū)提供建站服務(wù)。全流程定制網(wǎng)站開發(fā),專業(yè)設(shè)計(jì),全程項(xiàng)目跟蹤,創(chuàng)新互聯(lián)專業(yè)和態(tài)度為您提供的服務(wù)
語法: cp [選項(xiàng)] 源文件或目錄 目標(biāo)文件或目錄 ? ? 說明:該命令把指定的源文件復(fù)制到目標(biāo)文件或把多個(gè)源文件復(fù)制到目標(biāo)目錄中。 ?
該命令的各選項(xiàng)含義如下: ? ? - a 該選項(xiàng)通常在拷貝目錄時(shí)使用。它保留鏈接、文件屬性,并遞歸地拷貝目錄,其作用等于dpR選項(xiàng)的組合。 ? ? - d 拷貝時(shí)保留鏈接。 ? ? - f 刪除已經(jīng)存在的目標(biāo)文件而不提示。 ? ? - i 和f選項(xiàng)相反,在覆蓋目標(biāo)文件之前將給出提示要求用戶確認(rèn)?;卮饄時(shí)目標(biāo)文件將被覆蓋,是交互式拷貝。 ? ? - p 此時(shí)cp除復(fù)制源文件的內(nèi)容外,還將把其修改時(shí)間和訪問權(quán)限也復(fù)制到新文件中。 ? ? - r 若給出的源文件是一目錄文件,此時(shí)cp將遞歸復(fù)制該目錄下所有的子目錄和文件。此時(shí)目標(biāo)文件必須為一個(gè)目錄名。 ? ? - l 不作拷貝,只是鏈接文件。 ?
需要說明的是,為防止用戶在不經(jīng)意的情況下用cp命令破壞另一個(gè)文件,如用戶指定的目標(biāo)文件名已存在,用cp命令拷貝文件后,這個(gè)文件就會(huì)被新源文件覆蓋,因此,建議用戶在使用cp命令拷貝文件時(shí),最好使用i選項(xiàng)。 ?
例1 ? ? 復(fù)制指定目錄下的全部文件到另一個(gè)目錄中 ? ? 文件及目錄的復(fù)制是經(jīng)常要用到的。linux下進(jìn)行復(fù)制的命令為cp。 ? ? 假設(shè)復(fù)制源目錄 為 dir1 ,目標(biāo)目錄為dir2。怎樣才能將dir1下所有文件復(fù)制到dir2下了 ? ? 如果dir2目錄不存在,則可以直接使用 ? ? cp -r dir1 dir2 ? ? 即可。 ? ? 如果dir2目錄已存在,則需要使用 ? ? cp -r dir1/. dir2 ? ? 如果這時(shí)使用cp -r dir1 dir2,則也會(huì)將dir1目錄復(fù)制到dir2中,明顯不符合要求。 ? ? ps:dir1、dir2改成對(duì)應(yīng)的目錄路徑即可。 ?
例2 ? ? 復(fù)制指定文件到指定文件夾 ? ? 首先建立一個(gè)用于測(cè)試的目錄,用'tree'命令查看其結(jié)構(gòu)如下所示: ? ? ? ? 可見,目錄中主要包含用于測(cè)試的*.txt文件和用于充當(dāng)炮灰的*。tes文件 ? ? 目標(biāo)是保持當(dāng)前的目錄結(jié)構(gòu),只把txt文件復(fù)制出來 ?
方法一:當(dāng)不需要的文件類型較為單一時(shí),可以通過完全復(fù)制然后刪除指定類型的文件完成 ? ? Step1 使用命令 cp -r test/ test2 將測(cè)試目錄test下所有內(nèi)容完全復(fù)制到test2,此時(shí)樹形結(jié)構(gòu)如下圖 ? ? ? ? Step2 組合使用find及xargs,將*.tes文件刪除 ? ? xargs是給命令傳遞參數(shù)的一個(gè)過濾器,可以將前一個(gè)命令產(chǎn)生的輸出作為后一個(gè)命令的參數(shù) ? ? 命令find test2/ -name '*.tes' |xargs rm -rf, 即將find產(chǎn)生的輸出(test2目錄下的所有tes文件),作為rm的參數(shù),從而完全刪除 ? ? 實(shí)際效果如圖所示 ? ? ? ? 適用場(chǎng)景舉例:把項(xiàng)目文件備份,要去除其中的.svn文件,可以采用這種方式 ?
方法二:需要的文件為單一類型,帶目錄結(jié)構(gòu)復(fù)制 ? ? 這種情況下可以使用tar命令將指定類型的文件打包,然后解包,同樣需要組合使用find和xargs ? ? Step1 建立目錄test3 ? ? mkdir test3 ? ? Step2 將指定類型文件帶目錄結(jié)構(gòu)打包 ? ? find test/ -name '*.txt' |xargs tar czf test3.tgz ? ? Step3 解包到目錄test3 ? ? tar zxvf test3.tgz -C test3
常用的命令為# cp命令
方式一:對(duì)文件進(jìn)行copy:
#cp object_file source_file
方式二:對(duì)目錄下文件進(jìn)行copt:
#cp -r object_file source_file
補(bǔ)充cp的參數(shù):
用法:cp [選項(xiàng)]... [-T] 源文件 目標(biāo)文件
或:cp [選項(xiàng)]... 源文件... 目錄
或:cp [選項(xiàng)]... -t 目錄 源文件...
將源文件復(fù)制至目標(biāo)文件,或?qū)⒍鄠€(gè)源文件復(fù)制至目標(biāo)目錄。
長(zhǎng)選項(xiàng)必須使用的參數(shù)對(duì)于短選項(xiàng)時(shí)也是必需使用的。
-a, --archive 等于-dR --preserve=all
--backup[=CONTROL 為每個(gè)已存在的目標(biāo)文件創(chuàng)建備份
-b 類似--backup 但不接受參數(shù)
--copy-contents 在遞歸處理是復(fù)制特殊文件內(nèi)容
-d 等于--no-dereference --preserve=links
-f, --force 如果目標(biāo)文件無法打開則將其移除并重試(當(dāng) -n 選項(xiàng)
存在時(shí)則不需再選此項(xiàng))
-i, --interactive 覆蓋前詢問(使前面的 -n 選項(xiàng)失效)
-H 跟隨源文件中的命令行符號(hào)鏈接
-l, --link 鏈接文件而不復(fù)制
-L, --dereference 總是跟隨符號(hào)鏈接
-n, --no-clobber 不要覆蓋已存在的文件(使前面的 -i 選項(xiàng)失效)
-P, --no-dereference 不跟隨源文件中的符號(hào)鏈接
-p 等于--preserve=模式,所有權(quán),時(shí)間戳?!禠inux就該這么學(xué)》里有相關(guān)介紹,建議看看。
1,將文件從/etc/aaa.gz拷貝到/tmp/目錄下:
cp
/etc/aaa.gz
/tmp/
將文件從/etc/aaa.gz拷貝到/tmp/目錄下,并給它命名為bbb.gz
cp
/etc/aaa.gz
/tmp/bbb.gz
將目錄/etc/fold/拷貝到/tmp/目錄下
cp
-rf
/etc/fold
/tmp/
注:-r
用來拷貝文件夾,-f
用來強(qiáng)制拷貝不提示確認(rèn)
2,linux里給/etc/aaa.gz創(chuàng)建一個(gè)叫bbb.haha的鏈接,并移動(dòng)到/usr目錄下
ln
-s
/etc/aaa.gz
/usr/bbb.haha
注:-s是用來創(chuàng)建軟連接,類似windows上的快捷方式。
3,linux里給/etc/qqq.gz改名為bbb.gz
mv
/etc/qqq.gz
/etc/bbb.gz
linux如何復(fù)制文件夾和移動(dòng)文件夾
linux下文件的復(fù)制、移動(dòng)與刪除命令為:cp,mv,rm
一、文件復(fù)制命令cp
命令格式:cp [-adfilprsu] 源文件(source) 目標(biāo)文件(destination)
cp [option] source1 source2 source3 ... directory
參數(shù)說明:
-a:是指archive的意思,也說是指復(fù)制所有的目錄
-d:若源文件為連接文件(link file),則復(fù)制連接文件屬性而非文件本身
-f:強(qiáng)制(force),若有重復(fù)或其它疑問時(shí),不會(huì)詢問用戶,而強(qiáng)制復(fù)制
-i:若目標(biāo)文件(destination)已存在,在覆蓋時(shí)會(huì)先詢問是否真的操作
-l:建立硬連接(hard link)的連接文件,而非復(fù)制文件本身
-p:與文件的屬性一起復(fù)制,而非使用默認(rèn)屬性
-r:遞歸復(fù)制,用于目錄的復(fù)制操作
-s:復(fù)制成符號(hào)連接文件(symbolic link),即“快捷方式”文件
-u:若目標(biāo)文件比源文件舊,更新目標(biāo)文件
如將/test1目錄下的file1復(fù)制到/test3目錄,并將文件名改為file2,可輸入以下命令:
cp /test1/file1 /test3/file2
二、文件移動(dòng)命令mv
命令格式:mv [-fiv] source destination
參數(shù)說明:
-f:force,強(qiáng)制直接移動(dòng)而不詢問
-i:若目標(biāo)文件(destination)已經(jīng)存在,就會(huì)詢問是否覆蓋
-u:若目標(biāo)文件已經(jīng)存在,且源文件比較新,才會(huì)更新
如將/test1目錄下的file1復(fù)制到/test3 目錄,并將文件名改為file2,可輸入以下命令:
mv /test1/file1 /test3/file2
三、文件刪除命令rm
命令格式:rm [fir] 文件或目錄
參數(shù)說明:
-f:強(qiáng)制刪除
-i:交互模式,在刪除前詢問用戶是否操作
-r:遞歸刪除,常用在目錄的刪除
如刪除/test目錄下的file1文件,可以輸入以下命令:
rm -i /test/file1
復(fù)制:
CP命令
格式: CP [選項(xiàng)]? 源文件或目錄? 目的文件或目錄
選項(xiàng)說明:-b 同名,備分原來的文件
? ? -f 強(qiáng)制覆蓋同名文件
? ? -r? 按遞歸方式保留原目錄結(jié)構(gòu)復(fù)制文件
cp -Rf /home/user1/* /root/temp/
將 /home/user1目錄下的所有東西拷到/root/temp/下而不拷貝user1目錄本身。
即格式為:cp -Rf 原路徑/ 目的路徑/
移動(dòng):
mv ./WorkReport/web.xml ./WorkReport/WEB-INF/注:移動(dòng)/WorkReport/web.xml文件到/WorkReport/WEB-INF/mv /data/new/data/old/注:移動(dòng)/data/new到/data/old/文件夾下
注意點(diǎn):移動(dòng)文件夾的話就不要再加 / 了
如果是移動(dòng)文件夾下的所有文件的話就可以文件夾后面跟上 /*
mv /data/new/* /data/old/