Linux命令xargs命令的使用

xargs是給命令傳遞參數(shù)的一個(gè)過濾器眯漩,也是組合多個(gè)命令的一個(gè)工具。它把一個(gè)數(shù)據(jù)流分割為一些足夠小的塊,以方便過濾器和命令進(jìn)行處理慎宾。通常情況下丐吓,xargs從管道或者stdin中讀取數(shù)據(jù),但是它也能夠從文件的輸出中讀取數(shù)據(jù)趟据。xargs的默認(rèn)命令是echo券犁,這意味著通過管道傳遞給xargs的輸入將會(huì)包含換行和空白,不過通過xargs的處理汹碱,換行和空白將被空格取代粘衬。
xargs 是一個(gè)強(qiáng)有力的命令,它能夠捕獲一個(gè)命令的輸出咳促,然后傳遞給另外一個(gè)命令稚新,下面是一些如何有效使用xargs 的實(shí)用例子。

  1. 當(dāng)你嘗試用rm 刪除太多的文件跪腹,你可能得到一個(gè)錯(cuò)誤信息:/bin/rm Argument list too long. 用xargs 去避免這個(gè)問題

     find ~ -name ‘*.log’ -print0 | xargs -0 rm -f
    
  2. 獲得/etc/ 下所有*.conf 結(jié)尾的文件列表褂删,有幾種不同的方法能得到相同的結(jié)果,下面的例子僅僅是示范怎么實(shí)用xargs 冲茸,在這個(gè)例子中實(shí)用 xargs將find 命令的輸出傳遞給ls -l

     # find /etc -name "*.conf" | xargs ls –l
    
  3. 假如你有一個(gè)文件包含了很多你希望下載的URL, 你能夠使用xargs 下載所有鏈接

     # cat url-list.txt | xargs wget –c
    
  4. 查找所有的jpg 文件笤妙,并且壓縮它

     # find / -name *.jpg -type f -print | xargs tar -cvzf images.tar.gz
    
  5. 拷貝所有的圖片文件到一個(gè)外部的硬盤驅(qū)動(dòng)

     # ls *.jpg | xargs -n1 -i cp {} /external-hard-drive/directory
    

EXAMPLES

find /tmp -name core -type f -print | xargs /bin/rm -f

Find files named core in or below the directory /tmp and delete them. Note that this will work incorrectly if there are any filenames containing newlines or spaces.

find /tmp -name core -type f -print0 | xargs -0 /bin/rm -f

Find files named core in or below the directory /tmp and delete them, processing filenames in such a way that file or directory names containing spaces or newlines are correctly handled.

find /tmp -depth -name core -type f -delete

Find files named core in or below the directory /tmp and delete them, but more efficiently than in the previous example (because we avoid the need to use fork(2) and exec(2) to launch rm and we don't need the extra xargs process).

cut -d: -f1 < /etc/passwd | sort | xargs echo

Generates a compact listing of all the users on the system.

xargs sh -c 'emacs "$@" < /dev/tty' emacs
Launches the minimum number of copies of Emacs needed, one after the other, to edit the files listed on xargs' standard input. This example achieves the same effect as BSD's -o option, but in a more flexible and portable way.

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市噪裕,隨后出現(xiàn)的幾起案子蹲盘,更是在濱河造成了極大的恐慌,老刑警劉巖膳音,帶你破解...
    沈念sama閱讀 218,284評論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件召衔,死亡現(xiàn)場離奇詭異,居然都是意外死亡祭陷,警方通過查閱死者的電腦和手機(jī)苍凛,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,115評論 3 395
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來兵志,“玉大人醇蝴,你說我怎么就攤上這事∠牒保” “怎么了悠栓?”我有些...
    開封第一講書人閱讀 164,614評論 0 354
  • 文/不壞的土叔 我叫張陵,是天一觀的道長按价。 經(jīng)常有香客問我惭适,道長,這世上最難降的妖魔是什么楼镐? 我笑而不...
    開封第一講書人閱讀 58,671評論 1 293
  • 正文 為了忘掉前任癞志,我火速辦了婚禮,結(jié)果婚禮上框产,老公的妹妹穿的比我還像新娘凄杯。我一直安慰自己错洁,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,699評論 6 392
  • 文/花漫 我一把揭開白布戒突。 她就那樣靜靜地躺著屯碴,像睡著了一般。 火紅的嫁衣襯著肌膚如雪妖谴。 梳的紋絲不亂的頭發(fā)上窿锉,一...
    開封第一講書人閱讀 51,562評論 1 305
  • 那天酌摇,我揣著相機(jī)與錄音膝舅,去河邊找鬼。 笑死窑多,一個(gè)胖子當(dāng)著我的面吹牛仍稀,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播埂息,決...
    沈念sama閱讀 40,309評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼技潘,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了千康?” 一聲冷哼從身側(cè)響起享幽,我...
    開封第一講書人閱讀 39,223評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎拾弃,沒想到半個(gè)月后值桩,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,668評論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡豪椿,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,859評論 3 336
  • 正文 我和宋清朗相戀三年奔坟,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片搭盾。...
    茶點(diǎn)故事閱讀 39,981評論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡咳秉,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出鸯隅,到底是詐尸還是另有隱情澜建,我是刑警寧澤,帶...
    沈念sama閱讀 35,705評論 5 347
  • 正文 年R本政府宣布蝌以,位于F島的核電站霎奢,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏饼灿。R本人自食惡果不足惜幕侠,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,310評論 3 330
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望碍彭。 院中可真熱鬧晤硕,春花似錦悼潭、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,904評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至疏橄,卻和暖如春占拍,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背捎迫。 一陣腳步聲響...
    開封第一講書人閱讀 33,023評論 1 270
  • 我被黑心中介騙來泰國打工晃酒, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人窄绒。 一個(gè)月前我還...
    沈念sama閱讀 48,146評論 3 370
  • 正文 我出身青樓贝次,卻偏偏與公主長得像,于是被迫代替她去往敵國和親彰导。 傳聞我的和親對象是個(gè)殘疾皇子蛔翅,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,933評論 2 355

推薦閱讀更多精彩內(nèi)容