首页 行业资讯 宠物日常 宠物养护 宠物健康 宠物故事

shell脚本xargs怎么连两个句子

发布网友 发布时间:2022-04-24 09:52

我来回答

2个回答

热心网友 时间:2022-06-18 17:44

xargs更象一个筛选器,将符合管道传递过来的内容进行处理,这是一个极度高效的方法。xargs reads items from the standard input.
1、查询包含string的文件
find . -name ‘*.html’| xargs grep string
2、删除符合条件的文件
ls|xargs -i rm -rf {}
find . -name ‘*.log’ -mtime +30| xargs rm -rf
find . -name ‘*.log’ -mtime +30 -exec rm -rf {} \;
注意”{} \;”是一起用的,可以用”{} +”代替。
find . -name “*.log” -exec ls -l {} +
3、-I{}替换串replace-str
cat ip.txt | xargs -I {} echo {}/24
-i[replace-str]可以替代-Ireplace-str
cat ip.txt | xargs -i{} echo {}
cat ip.txt | xargs -iIP echo IP
在远程服务器列表的执行命令
cat ip.txt | xargs -I{} ssh -p322 root@{} hostname
4、批量文件改名
增加字符
ls -1 | xargs -t -i mv {} {}.bak
删减字符
#!/bin/sh
for i in `ls ABCD*`
do
n=${i#”ABCD”}
mv $i $n
done
或者
ls -1 ABCD* |sed ‘s/ABCD//’|xargs -t -i mv ABCD{} {}
删除A字符
#!/bin/sh
for file in `ls *A.wav`;do
n=`echo $file| sed ‘s/A//g’`
/bin/mv $file $n
done
5、批量删除包含code.html的行
find ./ -name “*.html” -exec grep code.html ‘{}’ \; |xargs sed -i ‘/code.html/d’
find ./ -name “*.html” -exec grep code.html ‘{}’ \; -exec sed -i ‘/code.html/d’ {} \;
6、批量替换
find ./ -name “*.html” -exec grep .com ‘{}’ \; -exec sed -i ‘s/.com/.cn/g’ {} \;
find ./ -name “*.html” -exec grep .com ‘{}’ \; |xargs sed -i ‘s/.com/.cn/g’
7、单行显示所有用户名
cut -d: -f1 < /etc/passwd | sort | xargs echo
awk ‘{print $1}’ /etc/passwd | xargs echo
8、–verbose, -t
cat a
one two
three four
cat a |xargs
cat a |xargs –verbose
cat a |xargs –verbose –max-args=2
9、终止所有java进程
pgrep java|xargs kill -9

热心网友 时间:2022-06-18 17:44

命令一 | xargs 命令二

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com