unix命令之xargs[通俗易懂]

unix命令之xargs[通俗易懂]unix命令之xargs,与"|"配合的神奇命令

大家好,又见面了,我是你们的朋友全栈君。

关于shell编程,说到底除了要掌握一些shell的编程套路外,本身对unix的命令掌握程度是关键,其中最常见的,要数sed,awk等文件操作,这些文件处理命令很丰富,网上内容很多,今天我详细说的是xargs这个看起来不怎么起眼的命令,甚至有些人不太明白它到底起作用。我的理解是我们用它可以像一个for循环似的,可以避免一些循环结构的使用,尤其是与命令的组合。
下面我们详细说明

# 查找"*.c"文件名中包含abc的文件path
find . -name "*.c" | grep abc
# 查找"*.c"文件中包含abc的行
find . -name "*.c" | xargs grep abc

下面请看带参数使用的xargs -i,{}表示对拆分模块的位置指定

# 查找和端口22202相关的进程号,并杀死它们,aix,linux上netstat -p  可以直接看到进程信息
netstat -aAn | grep 22202 | awk '{print $1}' | xargs -i rmsock {} tcpcb | awk '{print $9}' | kill -9
# 统计代码行数
 find . -name "*.c" | xargs -i wc -l {} | awk '{sum+=$1}END{print sum}'
# 文件utf-8转gbk编码格式
find . -name "*.c"  | xargs -i iconv -f UTF-8 -t GBK {} -o {}.tmp
find . -name "*.c" | xargs -i mv -f {}.tmp  {}

还有在一些sed不支持在原文件修改的*nix系统,也可以完成类似的功能,而不用写脚本。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/138226.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • mysql 1396_Mysql ERROR 1396 (HY000) 错误的解决办法「建议收藏」

    mysql 1396_Mysql ERROR 1396 (HY000) 错误的解决办法「建议收藏」建立用户的时候报告这个错误:ERROR1396(HY000):OperationCREATEUSERfailedfor’abc’@’localhost’原因是mysql中已经有了这个用户,从mysql.user中直接删除delete,然后刷新权限FLUSHPRIVILEGES,再建用户就不会有这个问题了。如果是dropuser的话,mysql内部会自动刷新一下,那么再建也不会…

    2022年8月12日
    6
  • 在pycharm新建项目时配置anaconda环境

    在pycharm新建项目时配置anaconda环境在 pycharm 新建项目时配置 anaconda 环境的解决办法

    2025年6月26日
    2
  • java记录访问时间_在java中记录上次访问时间和上次修改时间?

    java记录访问时间_在java中记录上次访问时间和上次修改时间?首先,让我们关注这些事物的含义.访问–上次读取文件的时间,即上次访问文件数据的时间.修改–上次修改文件(内容已被修改),即文件数据上次修改的时间.更改–文件的元数据的最后一次更改(例如,权限),即上次更改文件状态的时间.编辑.访问时间正在改变.我建议你使用Thread.sleep(100)或其他东西,然后看看这个问题是否仍然存在.如果是这样,罪魁祸首就必须是您正在运行的操作系统,因为J…

    2022年7月8日
    20
  • 拉格朗日乘数法_拉格朗日乘数法是求边界点吗

    拉格朗日乘数法_拉格朗日乘数法是求边界点吗原文地址:https://www.cnblogs.com/maybe2030/p/4946256.html阅读目录1.拉格朗日乘数法的基本思想 2.数学实例 3.拉格朗日乘数法的基本形态 4.拉格朗日乘数法与KKT条件   拉格朗日乘数法(LagrangeMultiplierMethod)之前听数学老师授课的时候就是一知半解,现在越发感觉拉格朗日乘数法应用的广泛性,…

    2025年8月21日
    1
  • html分页样式居中,bootstrap分页样式怎么实现?

    html分页样式居中,bootstrap分页样式怎么实现?bootstrap分页样式怎么实现?下面本篇文章给大家介绍一下bootstrap分页的实现。有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮助。任何一个网页里面,我们都可以看到分页,不管是移动端,还是pc端,不管是下拉到下一页,还是按钮下一页,都需要分页支撑你的网站。这样首先,可以提高你的网站的访问效率;另外页面展现也更加好看,要不然,上百万的上千万的数据;显示估计一两个小时也显示不出…

    2022年7月17日
    12
  • linux内核定时器实验

    linux内核定时器实验文章目录一、linux时间管理和内核定时器简介1.内核时间管理简介2.内核定时器简介1.init_timer函数2.add_timer函数3.del_timer函数4.del_timer_sync函数5.mod_timer函数3.linux内核短延时函数二、硬件原理图分析三、实验程序编写1.修改设备树文件2.定时器驱动程序编写3.编写测试APP四、运行测试定时器是我们最常用到的功能,一般用来完成定时功能,本章我们就来学习一下Linux内核提供的定时器API函数,通过这些定时器

    2022年7月26日
    7

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号