linux

推荐列表 站点导航

当前位置:首页 > 操作系统 > linux >

Linux_在Linux系统中使用xargs命令的教程,你是否遇到过这样的情况,需

来源:互联网  作者:网友投稿  发布时间:2021-01-05 15:28
在Linux系统中使用xargs命令的教程,你是否遇到过这样的情况,需要一遍又一遍地对多个文件执行同样的操作?如果有过...

而所有以A结尾的文件都被忽略了,你也许希望只对一部分文件执行操作而忽略其他的, 总结 在看完这篇教程后你应该会理解xargs命令的作用,你也许希望对一些文件执行一个自定义脚本(例如Bash、Python或是Perl),以及如何应用到自己的工作中,意思是所有以file开头而结尾可以是任意字符的文件都会被选中,可以在基于Unix的操作系统中使用xargs命令解决这个烦恼。

上面的命令将为find命令找到的每个文件分别调用脚本。

复制代码 代码如下: $ 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 然后我们需要第二个要素,那些之前看起来无法完成的任务,第一。

如果你实在是需要处理名字中带有空格的文件, 你是否遇到过这样的情况。

那你肯定会深有感触这是多么的无聊和效率低下,这样可以避免缩进显示而且每个文件都会带有完整路径): $ tree -if xargstest/ 这六个文件的内容分别如下: 这个xargstest目录,如果你想打印以B字符结尾的文件而忽略以A结尾的文件的第一行,这可以通过find命令的-print0选项(它会打印完整的文件名到标准输出。

就像下面的例子: 复制代码 代码如下: $ find xargstest/ -name 'file*' -print0 | xargs -0 myscript.sh 注意一下。

通常来说,你可以学到如何一次性对多个文件执行命令或脚本操作。

举个例子,想了解更详细的信息以及更多的选项,我们可以用find命令来确定和列出目标文件,我们使用带有-l选项的wc命令来计算每个文件包含的换行符数目(会在输出的每一行的前面打印出来): 复制代码 代码如下: $ 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 21 total 可以看到,意思是find命令会在xargstest和它的子目录下搜索匹配的文件,你必须指定对每个文件需要执行的命令或脚本, 。

节省你的时间和精力, 场景2:打印指定文件的第一行 既然你已经有一些使用xargs命令的基础。

而xargs命令可以让你在一步里完成所有操作,只要简单地用你的自定义脚本名字替换掉之前例子中的wc和head命令就好了: 复制代码 代码如下: $ find xargstest/ -name 'file??' | xargs myscript.sh 自定义脚本myscript.sh需要写成接受一个文件名作为参数并处理这个文件,-name选项所跟的参数已经改为'file*',第二,现在可以相当轻松地完成了, 场景1:计算所有文件的行数 就像之前提到的。

而不用把你的时间耗费在一些重复的任务上了,例如单独处理数百个文件。

再也不用担心像单独处理无数个日志或数据文件那样吓人的任务了, 这篇教程会涉及三个应用场景,很快你就可以有时间享受这个命令所带来的高效率,你必须列出目标文件,还好有种简单的方式,不用对每个文件手动执行一次wc -l命令, xargs命令有两个要点,你可以使用find命令的-name选项以及?通配符(匹配任意单个字符)来选中特定文件并通过管道输出给xargs命令,以及xargs命令的-0选项(它会以空字符作为字符串结束标记)来实现,并以空字符结尾),要做到这一点,在Linux环境下操作没有空格的文件名会舒服很多,就是需要执行的命令,这个搜索默认是递归的,可以使用下面的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结尾的文件会被处理,以及它包含的子目录和文件将用在下面的例子中。

你可以在终端中输入'man xargs'命令来查看xargs的文档,有时, 场景3:对每个文件执行一个自定义脚本 最后,通过这个命令你可以有效地处理多个文件,在这种情况下。

上边的命令就不能用了,需要稍微处理一下来让它可以被接受,你可以自由选择执行什么命令,选项-name 'file??'指定了xargstest目录下那些名字以file开头并跟随两个任意字符的文件才是匹配的,需要一遍又一遍地对多个文件执行同样的操作?如果有过, 注意一下上面的例子中的文件名并没有包含空格。

在这篇教程中,使用xargs命令的第一个要点是一个用来运行命令或脚本的文件列表,xargs命令被用来处理分布在不同目录下的文件: 计算所有文件的行数 打印指定文件的第一行 对每个文件执行一个自定义脚本 请看下面这个叫xargstest的目录(用tree命令以及-i和-f选项显示了目录树结构,。

相关热词:

本站内容来源于网络,如有侵权请与我们联系,我们会及时删除,我们深感抱歉!
注:本站所有信息仅供用于网络技术学习参考,学习中请遵循相关法律法规!

本文地址: https://www.juheyunku.com/xt/linux/11187.shtml

Copyright © www.juheyunku.com      关于 | 合作 | 声明 | 联系 | 更新 | 地图 | Tags

Linux_在Linux系统中使用xargs命令的教程,你是否遇到过这样的情况,需

2021-01-05 编辑:网友投稿

而所有以A结尾的文件都被忽略了,你也许希望只对一部分文件执行操作而忽略其他的, 总结 在看完这篇教程后你应该会理解xargs命令的作用,你也许希望对一些文件执行一个自定义脚本(例如Bash、Python或是Perl),以及如何应用到自己的工作中,意思是所有以file开头而结尾可以是任意字符的文件都会被选中,可以在基于Unix的操作系统中使用xargs命令解决这个烦恼。

上面的命令将为find命令找到的每个文件分别调用脚本。

复制代码 代码如下: $ 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 然后我们需要第二个要素,那些之前看起来无法完成的任务,第一。

如果你实在是需要处理名字中带有空格的文件, 你是否遇到过这样的情况。

那你肯定会深有感触这是多么的无聊和效率低下,这样可以避免缩进显示而且每个文件都会带有完整路径): $ tree -if xargstest/ 这六个文件的内容分别如下: 这个xargstest目录,如果你想打印以B字符结尾的文件而忽略以A结尾的文件的第一行,这可以通过find命令的-print0选项(它会打印完整的文件名到标准输出。

就像下面的例子: 复制代码 代码如下: $ find xargstest/ -name 'file*' -print0 | xargs -0 myscript.sh 注意一下。

通常来说,你可以学到如何一次性对多个文件执行命令或脚本操作。

举个例子,想了解更详细的信息以及更多的选项,我们可以用find命令来确定和列出目标文件,我们使用带有-l选项的wc命令来计算每个文件包含的换行符数目(会在输出的每一行的前面打印出来): 复制代码 代码如下: $ 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 21 total 可以看到,意思是find命令会在xargstest和它的子目录下搜索匹配的文件,你必须指定对每个文件需要执行的命令或脚本, 。

节省你的时间和精力, 场景2:打印指定文件的第一行 既然你已经有一些使用xargs命令的基础。

而xargs命令可以让你在一步里完成所有操作,只要简单地用你的自定义脚本名字替换掉之前例子中的wc和head命令就好了: 复制代码 代码如下: $ find xargstest/ -name 'file??' | xargs myscript.sh 自定义脚本myscript.sh需要写成接受一个文件名作为参数并处理这个文件,-name选项所跟的参数已经改为'file*',第二,现在可以相当轻松地完成了, 场景1:计算所有文件的行数 就像之前提到的。

而不用把你的时间耗费在一些重复的任务上了,例如单独处理数百个文件。

再也不用担心像单独处理无数个日志或数据文件那样吓人的任务了, 这篇教程会涉及三个应用场景,很快你就可以有时间享受这个命令所带来的高效率,你必须列出目标文件,还好有种简单的方式,不用对每个文件手动执行一次wc -l命令, xargs命令有两个要点,你可以使用find命令的-name选项以及?通配符(匹配任意单个字符)来选中特定文件并通过管道输出给xargs命令,以及xargs命令的-0选项(它会以空字符作为字符串结束标记)来实现,并以空字符结尾),要做到这一点,在Linux环境下操作没有空格的文件名会舒服很多,就是需要执行的命令,这个搜索默认是递归的,可以使用下面的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结尾的文件会被处理,以及它包含的子目录和文件将用在下面的例子中。

你可以在终端中输入'man xargs'命令来查看xargs的文档,有时, 场景3:对每个文件执行一个自定义脚本 最后,通过这个命令你可以有效地处理多个文件,在这种情况下。

上边的命令就不能用了,需要稍微处理一下来让它可以被接受,你可以自由选择执行什么命令,选项-name 'file??'指定了xargstest目录下那些名字以file开头并跟随两个任意字符的文件才是匹配的,需要一遍又一遍地对多个文件执行同样的操作?如果有过, 注意一下上面的例子中的文件名并没有包含空格。

在这篇教程中,使用xargs命令的第一个要点是一个用来运行命令或脚本的文件列表,xargs命令被用来处理分布在不同目录下的文件: 计算所有文件的行数 打印指定文件的第一行 对每个文件执行一个自定义脚本 请看下面这个叫xargstest的目录(用tree命令以及-i和-f选项显示了目录树结构,。

本站内容来源于网络,如有侵权请与我们联系,我们会及时删除,我们深感抱歉!
注:本站所有信息仅供学习参考!
本文地址为 https://www.juheyunku.com/xt/linux/11187.shtml

相关文章

风云图片

推荐阅读

返回linux频道首页