如何在Linux中復(fù)制文件到多個(gè)目錄中
在學(xué)習(xí) Linux 的過程中,對(duì)于新手而言總是會(huì)使用幾個(gè)命令來完成一個(gè)簡單的任務(wù)。對(duì)正在熟悉使用終端的人這是很容易理解的行為。然而,如果你想要成為一個(gè)老手,學(xué)習(xí)我說的“快捷命令”會(huì)顯著減少時(shí)間浪費(fèi)。
在本篇中,我們會(huì)用一個(gè)簡單的方法在 Linux 中用一個(gè)命令來將目錄復(fù)制到多個(gè)文件夾中。
在 Linux 中,cp 命令常被用于從一個(gè)文件夾中復(fù)制文件到另一個(gè)文件夾中,最簡單的語法如下:
- # cp [options….] source(s) destination
另外,你也可以使用高級(jí)復(fù)制命令,它可以在復(fù)制大的文件或文件夾時(shí)顯示進(jìn)度條。
看下下面的命令,通常你會(huì)使用兩個(gè)不同的命令來將相同的文件復(fù)制到不同的文件夾中:
- # cp -v /home/aaronkilik/bin/sys_info.sh /home/aaronkilik/test
- # cp -v /home/aaronkilik/bin/sys_info.sh /home/aaronkilik/tmp
復(fù)制文件到多個(gè)文件夾中
假設(shè)你想要復(fù)制一個(gè)特定文件到 5 個(gè)或者更多的文件夾中,這意味著你需要輸入 5 次或者更多的cp命令么?
要擺脫這個(gè)問題,你可以用 cp 命令與 echo命令、管道、xargs 命令一起使用:
- # echo /home/aaronkilik/test/ /home/aaronkilik/tmp | xargs -n 1 cp -v /home/aaronkilik/bin/sys_info.sh
上面的命令中,目錄的路徑(dir1、dir2、dir3...dirN)被管道作為輸入到 xargs 命令中,含義是:
- -n 1 - 告訴 xargs 命令每個(gè)命令行最多使用一個(gè)參數(shù),并發(fā)送到 cp 命令中。
- cp – 用于復(fù)制文件。
- -v – 啟用詳細(xì)模式來顯示更多復(fù)制細(xì)節(jié)。
在 Linux 中復(fù)制文件到多個(gè)位置中
試試閱讀 cp、 echo 和 xargs 的 man 頁面來找出所有有用和高級(jí)的用法信息:
- $ man cp
- $ man echo
- $ man xargs
就是這樣了,你可以在下面的評(píng)論區(qū)給我們發(fā)送主題相關(guān)的問題或者反饋。你也可以閱讀有關(guān) progress 命令來幫助監(jiān)控運(yùn)行中的(cp、mv、dd、tar 等等)的進(jìn)度。
作者簡介:
Aaron Kili 是一個(gè) Linux 及 F.O.S.S 熱衷者,即將成為 Linux 系統(tǒng)管理員、web 開發(fā)者,目前是 TecMint 的內(nèi)容創(chuàng)作者,他喜歡用電腦工作,并堅(jiān)信分享知識(shí)。





























