新聞中心
xargs是給命令傳遞參數(shù)的一個(gè)過濾器,也是組合多個(gè)命令的一個(gè)工具,xargs 可以將管道或標(biāo)準(zhǔn)輸入(stdin)數(shù)據(jù)轉(zhuǎn)換成命令行參數(shù),也能夠從文件的輸出中讀取數(shù)據(jù),xargs 也可以將單行或多行文本輸入轉(zhuǎn)換為其他格式,例如多行變單行,單行變多行,下面為大家詳細(xì)講解一下xargs命令。

創(chuàng)新互聯(lián)公司是專業(yè)的萊陽網(wǎng)站建設(shè)公司,萊陽接單;提供成都做網(wǎng)站、成都網(wǎng)站設(shè)計(jì)、成都外貿(mào)網(wǎng)站建設(shè),網(wǎng)頁設(shè)計(jì),網(wǎng)站設(shè)計(jì),建網(wǎng)站,PHP網(wǎng)站建設(shè)等專業(yè)做網(wǎng)站服務(wù);采用PHP框架,可快速的進(jìn)行萊陽網(wǎng)站開發(fā)網(wǎng)頁制作和功能擴(kuò)展;專業(yè)做搜索引擎喜愛的網(wǎng)站,專業(yè)的做網(wǎng)站團(tuán)隊(duì),希望更多企業(yè)前來合作!
命令格式:
somecommand |xargs -item command
參數(shù):
-
-a file 從文件中讀入作為 stdin
-
-e flag ,注意有的時(shí)候可能會是-E,flag必須是一個(gè)以空格分隔的標(biāo)志,當(dāng)xargs分析到含有flag這個(gè)標(biāo)志的時(shí)候就停止。
-
-p 當(dāng)每次執(zhí)行一個(gè)argument的時(shí)候詢問一次用戶。
-
-n num 后面加次數(shù),表示命令在執(zhí)行的時(shí)候一次用的argument的個(gè)數(shù),默認(rèn)是用所有的。
-
-t 表示先打印命令,然后再執(zhí)行。
-
-i 或者是-I,這得看linux支持了,將xargs的每項(xiàng)名稱,一般是一行一行賦值給 {},可以用 {} 代替。
-
-r no-run-if-empty 當(dāng)xargs的輸入為空的時(shí)候則停止xargs,不用再去執(zhí)行了。
-
-s num 命令行的最大字符數(shù),指的是 xargs 后面那個(gè)命令的最大命令行字符數(shù)。
-
-L num 從標(biāo)準(zhǔn)輸入一次讀取 num 行送給 command 命令。
-
-l 同 -L。
-
-d delim 分隔符,默認(rèn)的xargs分隔符是回車,argument的分隔符是空格,這里修改的是xargs的分隔符。
-
-x exit的意思,主要是配合-s使用。。
-
-P 修改最大的進(jìn)程數(shù),默認(rèn)是1,為0時(shí)候?yàn)閍s many as it can ,這個(gè)例子我沒有想到,應(yīng)該平時(shí)都用不到的吧。
xargs應(yīng)用實(shí)例
1,找出文件,改變文件所屬用戶
#將把當(dāng)前目錄下面以test開頭的文件用戶改為zhangy
[root@BlackGhost download]# find . -name "test*" -print | xargs chown zhangy:users
#查看當(dāng)前目錄中以test開頭的文件所屬用戶
[root@BlackGhost download]# find . -name "test*" -print -exec ls -al {} \;
./test.sql.zip
-rw-r--r-- 1 zhangy users 1981 Feb 2 16:05 ./test.sql.zip
./test.zip
-rw-r--r-- 1 zhangy users 164 May 23 22:54 ./test.zip
2,把系統(tǒng)的用戶統(tǒng)計(jì)一下
[zhangy@BlackGhost download]# cut -d: -f1 > /home/zhangy/userlist.txt
3,備份文件
[zhangy@BlackGhost ddd]$ ls |xargs -i cp {} {}.bak
cp test test.bak
當(dāng)前名稱:詳解xargs命令
當(dāng)前網(wǎng)址:http://m.fisionsoft.com.cn/article/djdiosj.html


咨詢
建站咨詢
