位置: 编程技术 - 正文

在Linux系统中使用xargs命令的教程(在linux操作系统中,/etc/rc.d/init.d)

编辑:rootadmin

推荐整理分享在Linux系统中使用xargs命令的教程(在linux操作系统中,/etc/rc.d/init.d),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:在linux系统中 用来存放系统所需,在linux系统中 用来存放系统所需,在linux系统中命令,在linux操作系统中,/etc/rc.d/init.d,在linux操作系统中,/etc/rc.d/init.d,在linux操作系统中,在linux操作系统中,/etc/rc.d/init.d,在linux系统中命令,内容如对您有帮助,希望把文章链接给更多的朋友!

你是否遇到过这样的情况,需要一遍又一遍地对多个文件执行同样的操作?如果有过,那你肯定会深有感触这是多么的无聊和效率低下。还好有种简单的方式,可以在基于Unix的操作系统中使用xargs命令解决这个烦恼。通过这个命令你可以有效地处理多个文件,节省你的时间和精力。在这篇教程中,你可以学到如何一次性对多个文件执行命令或脚本操作,再也不用担心像单独处理无数个日志或数据文件那样吓人的任务了。xargs命令有两个要点。第一,你必须列出目标文件。第二,你必须指定对每个文件需要执行的命令或脚本。

这篇教程会涉及三个应用场景,xargs命令被用来处理分布在不同目录下的文件:

计算所有文件的行数 打印指定文件的第一行 对每个文件执行一个自定义脚本

请看下面这个叫xargstest的目录(用tree命令以及-i和-f选项显示了目录树结构,这样可以避免缩进显示而且每个文件都会带有完整路径):

$ tree -if xargstest/

这六个文件的内容分别如下:

这个xargstest目录,以及它包含的子目录和文件将用在下面的例子中。场景1:计算所有文件的行数

就像之前提到的,使用xargs命令的第一个要点是一个用来运行命令或脚本的文件列表。我们可以用find命令来确定和列出目标文件。选项-name 'file??'指定了xargstest目录下那些名字以"file"开头并跟随两个任意字符的文件才是匹配的。这个搜索默认是递归的,意思是find命令会在xargstest和它的子目录下搜索匹配的文件。

复制代码代码如下:$ find xargstest/ -name 'file??'

复制代码代码如下:xargstest/dir3/file3B xargstest/dir3/file3A xargstest/dir1/file1A xargstest/dir1/file1B xargstest/dir2/file2B xargstest/dir2/file2A

我们可以通过管道把结果发给sort命令让文件名按顺序排列:

复制代码代码如下:$ find xargstest/ -name 'file??' | sort

复制代码代码如下:xargstest/dir1/file1A xargstest/dir1/file1B xargstest/dir2/file2A xargstest/dir2/file2B xargstest/dir3/file3A xargstest/dir3/file3B

然后我们需要第二个要素,就是需要执行的命令。我们使用带有-l选项的wc命令来计算每个文件包含的换行符数目(会在输出的每一行的前面打印出来):

在Linux系统中使用xargs命令的教程(在linux操作系统中,/etc/rc.d/init.d)

复制代码代码如下:$ find xargstest/ -name 'file??' | sort | xargs wc -l

复制代码代码如下:1 xargstest/dir1/file1A 2 xargstest/dir1/file1B 3 xargstest/dir2/file2A 4 xargstest/dir2/file2B 5 xargstest/dir3/file3A 6 xargstest/dir3/file3B total

可以看到,不用对每个文件手动执行一次wc -l命令,而xargs命令可以让你在一步里完成所有操作。那些之前看起来无法完成的任务,例如单独处理数百个文件,现在可以相当轻松地完成了。场景2:打印指定文件的第一行

既然你已经有一些使用xargs命令的基础,你可以自由选择执行什么命令。有时,你也许希望只对一部分文件执行操作而忽略其他的。在这种情况下,你可以使用find命令的-name选项以及?通配符(匹配任意单个字符)来选中特定文件并通过管道输出给xargs命令。举个例子,如果你想打印以“B”字符结尾的文件而忽略以“A”结尾的文件的第一行,可以使用下面的find、xargs和head命令组合来完成(head -n1会打印一个文件的第一行):

复制代码代码如下:$ find xargstest/ -name 'file?B' | sort | xargs head -n1

复制代码代码如下:==> xargstest/dir1/file1B <== one ==> xargstest/dir2/file2B <== one ==> xargstest/dir3/file3B <== one

你将看到只有以“B”结尾的文件会被处理,而所有以“A”结尾的文件都被忽略了。场景3:对每个文件执行一个自定义脚本

最后,你也许希望对一些文件执行一个自定义脚本(例如Bash、Python或是Perl)。要做到这一点,只要简单地用你的自定义脚本名字替换掉之前例子中的wc和head命令就好了:

复制代码代码如下:$ find xargstest/ -name 'file??' | xargs myscript.sh

自定义脚本myscript.sh需要写成接受一个文件名作为参数并处理这个文件。上面的命令将为find命令找到的每个文件分别调用脚本。

注意一下上面的例子中的文件名并没有包含空格。通常来说,在Linux环境下操作没有空格的文件名会舒服很多。如果你实在是需要处理名字中带有空格的文件,上边的命令就不能用了,需要稍微处理一下来让它可以被接受。这可以通过find命令的-print0选项(它会打印完整的文件名到标准输出,并以空字符结尾),以及xargs命令的-0选项(它会以空字符作为字符串结束标记)来实现,就像下面的例子:

复制代码代码如下:$ find xargstest/ -name 'file*' -print0 | xargs -0 myscript.sh

注意一下,-name选项所跟的参数已经改为'file*',意思是所有以"file"开头而结尾可以是任意字符的文件都会被选中。总结

在看完这篇教程后你应该会理解xargs命令的作用,以及如何应用到自己的工作中。很快你就可以有时间享受这个命令所带来的高效率,而不用把你的时间耗费在一些重复的任务上了。想了解更详细的信息以及更多的选项,你可以在终端中输入'man xargs'命令来查看xargs的文档。

Linux使用scp命令进行文件远程的上传或下载 我们知道Linux系统的操作大部分要通过命令来实现,想要进行文件远程的上传或下载的话,可选择使用scp命令,小编给大家简单的讲解下Linux使用scp命令

在CentOS系统上安装REMI仓库的方法 REMI仓库提供了CentOS和RHEL的核心包的更新版本,尤其是最新的PHP/MySQL系列(LCTT译注:当你需要一个更新包,而CentOS/RHEL没有及时提供更新时,REMI仓库可

Linux中6个有趣的终端工具介绍 1.pv命令你也许曾经看到过电影里的模拟字幕,它们好像是被实时敲打出来的.如果我么能在终端里实现这样的效果,那不是很好?这是可以做到的.我们可以

标签: 在linux操作系统中,/etc/rc.d/init.d

本文链接地址:https://www.jiuchutong.com/biancheng/367510.html 转载请保留说明!

上一篇:Linux如何修改TCP端口范围以满足个人需求(linux如何修改网关地址)

下一篇:Linux使用scp命令进行文件远程的上传或下载

  • 企业所得税更正申报要交滞纳金吗
  • 积分抵现是什么意思
  • 个体工商户申报个税是按月按季度
  • 兼职人员账务处理
  • 购买摄影器材会计分录
  • 购入包装物计入
  • 所得税年度纳税申报表 从业人数怎么填
  • 赠送客户的产品计入销售费用的二级科目
  • 缴纳销项税额要交税吗
  • 开了负数发票增值税申报表怎么填
  • 特殊贸易区域怎样选择
  • 哪些支出允许在企业所得税前扣除
  • 股权资本成本包括什么
  • 存货清查会计分录例题盘亏
  • 财产保全包括支付宝吗
  • 偶然所得个税怎么计算公式
  • 工程发票开多了怎么办
  • 农产品收购发票是普票还是专票
  • 办公室的取暖费怎么做会计分录
  • 应返还财政额度是什么科目
  • 公司多久不做账会被注销?
  • 小微企业月销售额不超过15万
  • 当月没有认证的发票要勾选吗
  • 沙特将开征增值税和特殊商品消费税
  • 外币折算买入价卖出价
  • 收到的劳务费发票进什么科目
  • 未分配利润转入本年利润
  • 钢结构施工速度快吗
  • 怎么用红字信息表开红字发票
  • 把d盘的空间分配到e盘
  • 栈定义代码
  • php5.4+mysql
  • win10分辨率调整
  • win10如何禁止
  • PHP:session_write_close()的用法_Session函数
  • 零售业如何盈利
  • ntkrpamp.exe
  • vue解决数据量过大的问题
  • 绿化费会计科目
  • vue-router
  • 企业所得税计算器在线计算
  • 固定资产的使用寿命超过一个会计年度
  • 残保金解决方案
  • vue图片点击放大
  • OpenCV之 BGR、GRAY、HSV色彩空间&色彩通道专题 【Open_CV系列(三)】
  • python简单九宫格拼图游戏
  • 固定资产多少钱以上才要计提折旧
  • 所得税的期初资产怎么算
  • 自产产品用于福利要交增值税吗
  • 织梦添加文章如何修改高级参数
  • 织梦系统网站搭建教程
  • 个体工商户购买生育险有生育津贴吗
  • 个税全员全额扣除怎么算
  • 故障的机器修好多少钱
  • 接受母公司捐赠现金分录
  • 计提和发放工资的会计科目
  • 公司收到服务费要交哪些税
  • 销售预付卡的账务处理
  • 上个季度增值税报错了
  • 建设工程项目设计阶段的投资控制方法有哪些
  • 小规模纳税人防伪税控会计分录
  • 进项发票已经认证,对方作废了
  • 收到投资款如何做税务登记
  • 赠送货物金额为多少
  • 购车的费用包括哪些费用
  • 如何填写出售固定资产表
  • mac截图清晰度设置方法
  • 怎么删除隐藏文件夹win 10
  • win7打开游戏显示已停止工作
  • win10系统玩游戏闪退怎么解决
  • javascript Function函数理解与实战
  • 编程python怎么学
  • node.js使用教程
  • 用nodejs做的项目
  • jQuery使用getJSON方法获取json数据完整示例
  • Python 制作糗事百科爬虫实例
  • 安卓多点触屏在哪里设置
  • python简要介绍
  • 南京交税的标准2019
  • 云南国税申报
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设