linux xargs命令詳解及應用

引子:find . -name "*.csv" | xargs du -ck | grep total

  • 使用find -exec選項處理匹配到的文件時男应,find命令將匹配到的所有文件一起傳遞給exec執(zhí)行

  • 有些系統(tǒng)exec的命令長度有限制祝闻,運行會導致溢出錯誤“參數(shù)列太長”或“參數(shù)列溢出”

  • exec會為處理每一個匹配到的文件而發(fā)起一個相應的進程页眯,并非將匹配到的文件全部作為參數(shù)一次執(zhí)行宗挥,一些情況下會導致進程過多靶壮,系統(tǒng)性能下降的問題维费,因而效率不高

  • xargs命令每次只獲取一部分文件而不是全部果元,處理完先獲取的 然后再去繼續(xù)獲取(究竟是一次獲取所有的參數(shù)犀盟,還是分批取得參數(shù)而晒,以及每一次獲取參數(shù)的數(shù)目都會根據(jù)該命令的選項及系統(tǒng)內核中相應的可調參數(shù)來確定。)

  • xargs只有一個進程阅畴,保證系統(tǒng)性能

使用實例:

1.查找系統(tǒng)中的每一個普通文件倡怎,然后使用xargs命令來測試他們分別屬于哪類文件

find . -type f -print | xargs file

2.在整個系統(tǒng)中查找內存信息存儲文件(core dump),然后把結果保存到/tmp/core.log文件中

find / -name "core" -print | xargs echo "" > /tmp/core.log

3.在當前目錄下查找所有用戶具有讀贱枣、寫和執(zhí)行權限的文件监署。并收回相應的寫權限

find . -perm -7 -print | xargs chmod o-w

4.用grep命令在所有的普通文件中搜索hostname這個詞

find . -type f -print | xargs grep "hostname"

5.用grep命令在當前目錄下的所有普通文件中搜索hostnames這個詞

find . -name * -type f -print | xargs grep "hostnames"

(注意,在上面的例子中纽哥, \用來取消find命令中的*在shell中的特殊含義钠乏。)

6.使用xargs執(zhí)行mv

find . -name "*.log" | xargs -i mv {} test4

7.find后執(zhí)行xargs提示xargs:argument line too long解決方法:

find . -type f -atime +0 -printf0 | xargs -0 -11 -t rm -f

find . -type f -atime +0 -print0 | xargs -0 -l1 -t rm -f

rm -f

-l1是一次處理一個;-t是處理之前打印出命令

8.使用-i參數(shù)默認的前面輸出用{}代替春塌,-I參數(shù)可以指定其他代替代替字符晓避,如例子中的[]

find . -name "file" | xargs -I [] cp [] ..

9.xargs的-p參數(shù)的使用

find . -name "*.log" | xargs -p -i mv {} ..

-p參數(shù)會提示讓你確認是否執(zhí)行后面的命令,y執(zhí)行,n不執(zhí)行摔笤。

?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末够滑,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子吕世,更是在濱河造成了極大的恐慌彰触,老刑警劉巖,帶你破解...
    沈念sama閱讀 216,372評論 6 498
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件命辖,死亡現(xiàn)場離奇詭異况毅,居然都是意外死亡分蓖,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,368評論 3 392
  • 文/潘曉璐 我一進店門尔许,熙熙樓的掌柜王于貴愁眉苦臉地迎上來么鹤,“玉大人,你說我怎么就攤上這事味廊≌籼穑” “怎么了?”我有些...
    開封第一講書人閱讀 162,415評論 0 353
  • 文/不壞的土叔 我叫張陵余佛,是天一觀的道長柠新。 經(jīng)常有香客問我,道長辉巡,這世上最難降的妖魔是什么恨憎? 我笑而不...
    開封第一講書人閱讀 58,157評論 1 292
  • 正文 為了忘掉前任,我火速辦了婚禮郊楣,結果婚禮上憔恳,老公的妹妹穿的比我還像新娘。我一直安慰自己净蚤,他們只是感情好钥组,可當我...
    茶點故事閱讀 67,171評論 6 388
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著塞栅,像睡著了一般者铜。 火紅的嫁衣襯著肌膚如雪腔丧。 梳的紋絲不亂的頭發(fā)上放椰,一...
    開封第一講書人閱讀 51,125評論 1 297
  • 那天,我揣著相機與錄音愉粤,去河邊找鬼砾医。 笑死,一個胖子當著我的面吹牛衣厘,可吹牛的內容都是我干的如蚜。 我是一名探鬼主播,決...
    沈念sama閱讀 40,028評論 3 417
  • 文/蒼蘭香墨 我猛地睜開眼影暴,長吁一口氣:“原來是場噩夢啊……” “哼错邦!你這毒婦竟也來了?” 一聲冷哼從身側響起型宙,我...
    開封第一講書人閱讀 38,887評論 0 274
  • 序言:老撾萬榮一對情侶失蹤撬呢,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后妆兑,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體魂拦,經(jīng)...
    沈念sama閱讀 45,310評論 1 310
  • 正文 獨居荒郊野嶺守林人離奇死亡毛仪,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 37,533評論 2 332
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了芯勘。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片箱靴。...
    茶點故事閱讀 39,690評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖荷愕,靈堂內的尸體忽然破棺而出衡怀,到底是詐尸還是另有隱情,我是刑警寧澤安疗,帶...
    沈念sama閱讀 35,411評論 5 343
  • 正文 年R本政府宣布狈癞,位于F島的核電站,受9級特大地震影響茂契,放射性物質發(fā)生泄漏蝶桶。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,004評論 3 325
  • 文/蒙蒙 一掉冶、第九天 我趴在偏房一處隱蔽的房頂上張望真竖。 院中可真熱鬧,春花似錦厌小、人聲如沸恢共。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,659評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽讨韭。三九已至,卻和暖如春癣蟋,著一層夾襖步出監(jiān)牢的瞬間透硝,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,812評論 1 268
  • 我被黑心中介騙來泰國打工疯搅, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留濒生,地道東北人。 一個月前我還...
    沈念sama閱讀 47,693評論 2 368
  • 正文 我出身青樓幔欧,卻偏偏與公主長得像罪治,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子礁蔗,可洞房花燭夜當晚...
    茶點故事閱讀 44,577評論 2 353

推薦閱讀更多精彩內容