帮助文档
专业提供香港服务器、香港云服务器、香港高防服务器租用、香港云主机、台湾服务器、美国服务器、美国云服务器vps租用、韩国高防服务器租用、新加坡服务器、日本服务器租用 一站式全球网络解决方案提供商!专业运营维护IDC数据中心,提供高质量的服务器托管,服务器机房租用,服务器机柜租用,IDC机房机柜租用等服务,稳定、安全、高性能的云端计算服务,实时满足您的多样性业务需求。 香港大带宽稳定可靠,高级工程师提供基于服务器硬件、操作系统、网络、应用环境、安全的免费技术支持。
服务器资讯 / 香港服务器租用 / 香港VPS租用 / 香港云服务器 / 美国服务器租用 / 台湾服务器租用 / 日本服务器租用 / 官方公告 / 帮助文档
Linux命令_xargs & 批量杀进程、批量拷贝文件、组合字符串
发布时间:2024-03-06 13:58:10   分类:帮助文档
Linux命令_xargs & 批量杀进程、批量拷贝文件、组合字符串

目录
1. 语法
1.1. 常用参数
2. 常见用法
2.1. 指定生成列数
2.2. 指定分隔符
2.3. 指定结束符
2.4. 组合字符串
3. 批量操作
3.1. 批量杀进程
3.2. 批量拷贝文件
3.3. 批量打包目录
3.4. 批量创建文件/目录
3.5. 批量删除文件
3.6. 批量修改文件/目录名
3.7. 批量修改文件权限


1. 语法
xargs [选项] [命令] [初始参数]
 
1.1. 常用参数
-d:指定分隔符
-n:指定标准输出的列数(最大128K)
-I:将标准输入的每行指定为{}
-i:类似 -I。如果标准输入未指定,则假定{}
-E:指定结束符,若没有找到指定的结束符,那么输出全部

-0:项目之间用null分隔,而不是空格
-a:从文件读取参数,而不是标准输入
-e:如果指定了END,则等效于-E END。否则,就没有文件结束字符串
-L:每行最多使用MAX-LINES非空输入行命令行
-l:每个人最多使用一个非空输入行命令行
-P:一次运行到max-procs进程
-p:执行命令前提示
-r:如果不带参数,则不执行命令。如果这个选项没有给出,COMMAND将会是至少跑一次。
-s:限制命令最多为MAX-CHARS
-t:执行命令前打印命令
-x:如果超过大小(参见-s)则退出

--process-slot-var:在子进程中设置环境变量VAR
--show-limits:显示命令行长度的限制
 
 
 
2. 常见用法
2.1. 指定生成列数

将所有行转换为列(默认分割符为空格)
cat file.txt |xargs

最大行支持128K,超过限制转换到第2行

 

指定输出2列(默认分割符为空格)
cat file.txt |xargs -n 2


 
 
2.2. 指定分隔符

指定分隔符转换为空格
cat file.txt |xargs -d ','


 

指定分隔符分割为2列
cat file.txt |xargs -d ',' -n 2


 
 
2.3. 指定结束符

echo "a b c d" |xargs -E "c"

-E "c":指定结束符为 "c"。从第一个字符开始找,找到 "c" 后退出

 
 
2.4. 组合字符串

输出 file1.log file2.log file3.log
seq 3 |xargs -i echo "file{}.log"

{}:表示标准输入的值(需要 -i 指定)

 
 
 
3. 批量操作
3.1. 批量杀进程

ps -ef |grep "process_name" |grep -v grep |awk '{print $2}' |xargs kill -9

process_name:表示进程名awk '{print $2}':表示获取第2列(PID列)xargs kill -9     :以PID作为输入,kill杀死进程
 
 
3.2. 批量拷贝文件

find ./ -type f -name "*" |xargs -I {} cp {} file/
find ./ -type f -name "*" |xargs -i cp {} ./

find ./ -type f -name "*":查找当前路径下所有文件-I {}:指定标准输入为{}cp {} file/:将查到的文件拷贝到 file 下

 
 
3.3. 批量打包目录

当前路径下所有文件/目录打包成一个tar
ls ./ |xargs tar -cvf dir.tar


 

指定目录/文件打包成一个tar
echo "dir1 dir3" |xargs tar -cvf dir.tar


 

将当前所有文件打包成一个tar
find ./ -type f -name "*" |xargs tar -cvf file.tar


 
 
3.4. 批量创建文件/目录

使用数字创建文件
seq 5 |xargs touch

使用数字创建目录
seq 5 |xargs mkdir

seq 5:输出1-5xargs touch:以数字1-5作为输入,批量创建文件

 

自定义创建文件
echo "file1 file2 file3" |xargs touch

 
 

组合字符串批量创建文件
seq 10 |xargs -i touch "file{}.log"

 
 
 
3.5. 批量删除文件

 find ./ -type f -name "tmp*" |xargs rm -rf
ls ./*.log |xargs rm -rf

 find ./ -type f -name "tmp*":查找tmp开头的文件xargs rm -rf:将标准输入的文件路径批量删除

 
 
3.6. 批量修改文件/目录名

ls |grep ".log" |xargs -i mv {} "{}.out"

-i:指定标准输入为 {}mv {} "{}.out":{} 表示标准输入。将文件/目录名修改为 [原名].out

 
 
3.7. 批量修改文件权限

find ./ -perm 644 | xargs chmod 700

find ./ -perm 644:查找当前路径下权限为644的文件/目录xargs chmod 700:批量修改权限





香港云服务器租用推荐
服务器租用资讯
·广东云服务有限公司怎么样
·广东云服务器怎么样
·广东锐讯网络有限公司怎么样
·广东佛山的蜗牛怎么那么大
·广东单位电话主机号怎么填写
·管家婆 花生壳怎么用
·官网域名过期要怎么办
·官网邮箱一般怎么命名
·官网网站被篡改怎么办
服务器租用推荐
·美国服务器租用
·台湾服务器租用
·香港云服务器租用
·香港裸金属服务器
·香港高防服务器租用
·香港服务器租用特价