xargs是给命令传递参数的一个过滤器,也是组合多个命令的一个工具。它把一个数据流分割为一些足够小的块,以方便过滤器和命令进行处理。通常情况下,xargs从管道或者stdin中读取数据,但是它也能够从文件的输出中读取数据。xargs的默认命令是echo,这意味着通过管道传递给xargs的输入将会包含换行和空白,不过通过xargs的处理,换行和空白将被空格取代。

xargs是一个强有力的命令,它能够捕获一个命令的输出,然后传递给另外一个命令,下面是一些如何有效使用xargs 的实用例子。

1. 当你尝试用rm删除out/target/目录下开头是cec_ctrl的一些的文件,你直接操作rm可能会得到一个错误信息:/bin/rm Argument list too long. 用xargs可以避免这个报错:

命令格式: find ./ -name 关键字 | xargs rm -rfv //加个v可以在终端显示操作的过程出来,不加就不显示

caizd@ubt144c:/work/jsh/RTD1295/rtd1295_1113$ find out/target/ -name cec_ctrl* |xargs rm -rfv
removed ‘out/target/product/kylin32/symbols/system/bin/cec_ctrl’
removed ‘out/target/product/kylin32/obj/EXECUTABLES/cec_ctrl_intermediates/export_includes’
removed ‘out/target/product/kylin32/obj/EXECUTABLES/cec_ctrl_intermediates/LINKED/cec_ctrl’
removed directory: ‘out/target/product/kylin32/obj/EXECUTABLES/cec_ctrl_intermediates/LINKED’
removed ‘out/target/product/kylin32/obj/EXECUTABLES/cec_ctrl_intermediates/cec_ctrl’
removed ‘out/target/product/kylin32/obj/EXECUTABLES/cec_ctrl_intermediates/PACKED/cec_ctrl’
removed directory: ‘out/target/product/kylin32/obj/EXECUTABLES/cec_ctrl_intermediates/PACKED’
removed ‘out/target/product/kylin32/obj/EXECUTABLES/cec_ctrl_intermediates/cec_ctrl.o’
removed ‘out/target/product/kylin32/obj/EXECUTABLES/cec_ctrl_intermediates/import_includes’
removed ‘out/target/product/kylin32/obj/EXECUTABLES/cec_ctrl_intermediates/cec_ctrl.P’

2. 获得system/etc/目录下所有*.fw 结尾的文件列表,在这个例子中使用xargs将find命令的输出传递给ls -l

命令格式: find system/etc -name “*.fw” | xargs ls –l

3. 查找所有的.c文件,并且压缩它

命令格式: find ./ -name *.c | xargs tar -cvzf source_code.tgz

Linux-shell编程_xargs命令详解相关推荐

  1. 小白必知命令 | Linux Shell 中 man 命令详解

    知道linux帮助文件(man-pages,手册页)一般放在,$MANPATH/man 目录下面,而且按照领域与语言放到不同的目录里面. 看了上一章,要找那个命令使用相关手册,只要我们按照领域区分,到 ...

  2. linux shell sed i,Linux Shell学习-sed命令详解

    (1).sed介绍 Sed是流编辑器,stream editor,它是一个将一些列编辑命令作用于一批文本文件的理想工具. (2).sed工作原理 Sed是一个非交互式文本编辑器,它可以对文本文件和标准 ...

  3. LINUX经常使用的命令详解

    LINUX经常使用的命令详解 源地址:http://blog.itpub.net/29065182/viewspace-1189162/ 1.man 对你熟悉或不熟悉的命令提供帮助解释  eg:man ...

  4. Ubuntu (Linux) 系统 find 命令详解

    Ubuntu (Linux) 系统 find 命令详解 在Ubuntu (Linux)系统的终端上,虽然没有像 windows 上那样简介易用的图形界面 搜索工具,但只要你使用足够熟练, 有一个强大命 ...

  5. linux ps(process status) 命令详解

    linux ps(process status) 命令详解 功能说明:报告程序状况. 语 法:ps [-aAcdefHjlmNVwy][acefghLnrsSTuvxX][-C <指令名称> ...

  6. Linux操作系统上lsof命令详解

    Linux操作系统上lsof命令详解 2011-10-08 18:31:31 http://xjsunjie.blog.51cto.com/999372/682865 标签:Linux lsof命令 ...

  7. linux slocate(secure locate) 命令详解

    linux slocate(secure locate) 命令详解 功能说明:查找文件或目录. 语 法:slocate [-u][--help][--version][-d <目录>][查 ...

  8. Linux上的free命令详解

    Linux上的free命令详解 转自: http://www.cnblogs.com/coldplayerest/archive/2010/02/20/1669949.html 解释一下Linux上f ...

  9. linux cut命令学习,Linux中的cut 命令详解

    今天小编要跟大家分享的文章是关于Linux中的cut 命令详解.cut 命令在Linux和Unix中的作用是从文件中的每一行中截取出一些部分,并输出到标准输出中.我们可以使用 cut 命令从一行字符串 ...

  10. linux磁盘分区fdisk命令详解及云硬盘挂载实操

    linux磁盘分区fdisk命令详解 1.什么是分区? 分区是将一个硬盘驱动器分成若干个逻辑驱动器,分区是把硬盘连续的区块当做一个独立的磁硬使用.分区表是一个硬盘分区的索引,分区的信息都会写进分区表. ...

最新文章

  1. 网络方法的发展及最新iDIRECT方法介绍
  2. 一个DotNetNuke 皮肤设计参考网站
  3. 通过BizTalk WCF适配器实现异构数据库/系统间的数据同步
  4. 95-10-025-启动-BrokerId相关
  5. Struts2和hibernate框架整合实现简单的注册登陆功能
  6. 力扣-111. 二叉树的最小深度
  7. 啊哈C语言4.9练习
  8. 我是如何获得微信内置表情的
  9. Verilog除法器的设计总结
  10. ArcGIS API For JavaScript官方文档之Dojo
  11. STM32 无法使用IAR下载程序问题
  12. VMware 虚拟机安装Linux(Ubuntu)系统教程
  13. HTML5应用——欢乐老虎机
  14. 气体浓度PPM与mg/m3的换算关系
  15. 使用python进行新浪微博粉丝爬虫
  16. 小学计算机教师试讲ppt,教师试讲面试10分钟ppt.ppt
  17. 单页下单商城源码+搭建教程
  18. 星星之火OIer:Post Office题解
  19. Unity 模型顶点法线不统一————使用Blender修改顶点法线
  20. linux shell遍历文件,Linux_shell脚本_遍历文件夹下所有文件

热门文章

  1. Linux学习——磁盘分区管理
  2. BZOJ_4196_[NOI2015]_软件包管理器_(树链剖分)
  3. 课程笔记:深度学习与人类语言处理 ——李宏毅,2020 (P5)
  4. 【比赛】智源计算所-互联网虚假新闻检测挑战赛(冠军)方案分享,代码已开源...
  5. 【Linux】shell命令总结
  6. 非名校毕业,如何在六天面试六家顶尖科技公司,并拿到全部Offer?
  7. 漫画 | 强化学习这都学不会的话,咳咳,你过来下!
  8. 灵活地横向扩展:从文件系统到分布式文件系统
  9. 阿里云技术团队原创力作震撼上市,强力解析云上Kubernetes!
  10. 阿里、Uber都在用的Flink你了解多少?