Linux中,关于find结合xargs/parallel的妙用有? (同时要是实用的,不炫技的)-问答-阿里云开发者社区-阿里云

开发者社区> a123456678> 正文

Linux中,关于find结合xargs/parallel的妙用有? (同时要是实用的,不炫技的)

2016-06-28 11:22:31 1748 1

今天了解到它们结合在一起所产生的强大的力量.

结合实用,应当能够给日常实用Linux带来效率的提升, 有哪些例子呢?

取消 提交回答
全部回答(1)
  • a123456678
    2019-07-17 19:48:06

    xargs可以看做一个循环辅助函数,它主要解决的就是在linux环境里,直接使用通配符导致参数过多,命令无法执行的情况。同时结合find,可以实现更多灵活性。
    比如:

    # 把所有以.json为后缀的文件mv到bak目录;如果json文件太多,直接mv *.json bak是不行的。
    find . -type f -name "*.json"|xargs -n10 -I% mv % bak
    # 把所有json文件重命名为以BAK结尾。find可以使用正则匹配,从而实现更多灵活性。
    find . -type f -name "*.json"|xargs -n10 -I% mv % %.BAK
    # 对所有json文件进行sed替换,把其中的_id都换成ID,同时原文件变成.bak后缀文件。
    find . -type f -name "*.json"|xargs -n3 sed -i.bak  's/\_id/ID/g'
    其中 -n number 指定每次给后面的命令多少参数,以上面第一个为例子,如果find到1w个文件,每次执行mv都是3个3个的mv。
    -I replstr指定替换字符串,比如我们指定replstr为%,那么在执行后面的命令时,%将会替换成传入参数的实际内容。注意replstr可以替换的字符串长度最大为255 byte

    在某些系统上,xargs可以使用-P maxprocs开启并行模式。在多核机器上应该会有明显的速度提升。

    0 0
相关问答

29

回答

云计算之路:为什么要选择云计算

cnblogs 2013-03-27 10:22:27 142630浏览量 回答数 29

162

回答

惊喜翻倍:免费ECS+免费环境配置~!(ECS免费体验6个月活动3月31日结束)

豆妹 2014-10-29 17:52:21 222944浏览量 回答数 162

145

回答

【新手入门】云服务器linux使用手册

fanyue88888 2012-11-26 17:14:18 157044浏览量 回答数 145

18

回答

阿里云开放端口权限

xcxx 2016-07-20 15:03:33 643021浏览量 回答数 18

38

回答

安全组详解,新手必看教程

我的中国 2017-11-30 15:23:46 256834浏览量 回答数 38

294

回答

Linux Bash严重漏洞修复紧急通知(已全部给出最终修复方案)

qilu 2014-09-25 13:26:50 431578浏览量 回答数 294

249

回答

阿里云LNAMP(Linux + Nginx + Apache + MySQL + PHP)环境一键安装脚本

云代维 2014-02-14 15:26:06 302564浏览量 回答数 249

97

回答

Redhat/CentOS一键安装web环境全攻略

xiaofanqie 2011-08-11 14:51:38 123185浏览量 回答数 97

40

回答

阿里云ecs从购买到环境搭建和建站!!(phpstudy一件包)

梦丫头 2014-07-29 20:51:49 162065浏览量 回答数 40

24

回答

【精品问答】python技术1000问(1)

问问小秘 2019-11-15 13:25:00 471201浏览量 回答数 24
+关注
0
文章
14879
问答
推荐问答
相关电子书
更多
文娱运维技术
立即下载
《SaaS模式云原生数据仓库应用场景实践》
立即下载
《看见新力量:二》电子书
立即下载