xargs参数的使用方法
xargs
是一个用于从标准输入中读取参数列表并将其传递给命令的实用程序。它通常用于将一个命令的输出作为另一个命令的输入。下面是 xargs
的基本使用方法:
bashCopy code
<command> | xargs <other command>
是一个产生输出的命令,它的输出将作为
的参数列表。例如,要查找当前目录下所有扩展名为 .txt
的文件并将它们删除,可以使用以下命令:
bashCopy code
find . -name "*.txt" | xargs rm
在上面的命令中,find . -name "*.txt"
查找所有扩展名为 .txt
的文件,并将它们的文件名输出到标准输出。xargs rm
从标准输入中读取文件名列表,并将它们传递给 rm
命令,以删除这些文件。
下面是 xargs
的一些常用参数:
-
-I
:指定一个替换字符串来代替输入中的参数。bashCopy code echo "one two three" | xargs -I {} echo {}
输出为:
sqlCopy code one two three
在上面的命令中,
-I {}
指定使用{}
替换输入中的参数。echo {}
会将每个参数作为单独的行输出。 -
-n
:指定每个命令执行时使用的参数数目。bashCopy code echo "one two three" | xargs -n 2 echo
输出为:
sqlCopy code one two three
在上面的命令中,
-n 2
指定每次执行echo
命令时使用两个参数。 -
-0
:指定输入参数列表使用 null 分隔符,而不是默认的空格分隔符。bashCopy code find . -name "*.txt" -print0 | xargs -0 rm
在上面的命令中,
find
命令的输出中的文件名使用 null 分隔符,xargs -0 rm
命令告诉xargs
使用 null 分隔符来读取文件名列表。 -
-t
:打印命令行中实际执行的命令,以便调试。bashCopy code echo "one two three" | xargs -t echo
输出为:
sqlCopy code echo one two three one two three
在上面的命令中,
-t
选项告诉xargs
输出实际执行的命令。 -
-p
:在执行每个命令之前询问用户是否要继续。bashCopy code echo "one two three" | xargs -p echo
输出为:
bashCopy code echo one two three ?...
在上面的命令中,
-p
选项会在执行命令之前询问用户是否要继续。 -
-r
:当没有输入参数时,避免执行命令。这可以避免在没有参数时意外地执行命令。bashCopy code echo "" | xargs -r echo
在上面的命令中,
-r
选项告诉xargs
当没有输入参数时不要执行echo
命令。 -
-s
:指定每个命令行使用的最大字符数。如果命令行超过这个限制,xargs
将分割它们成多个命令行。bashCopy code echo "one two three" | xargs -s 5 echo
输出为:
sqlCopy code one two thr ee
在上面的命令中,
-s 5
选项指定每个命令行最多使用 5 个字符。因此,xargs
将one two three
分割成了四个命令行。 -
--delimiter
:指定输入参数列表使用的分隔符。bashCopy code echo "one,two,three" | xargs --delimiter=',' echo
输出为:
sqlCopy code one two three
在上面的命令中,
--delimiter=','
指定,
作为输入参数列表的分隔符。 -
-x
:如果命令行长度超过系统限制,则退出而不是分割命令行。bashCopy code echo "one two three" | xargs -x echo
在上面的命令中,
-x
选项指定如果命令行长度超过系统限制,则退出而不是分割命令行。
以上是 xargs
的一些常用参数。请注意,xargs
命令的选项和参数可以因操作系统和版本而异。可以通过 man xargs
命令来查看本地系统上 xargs
命令的完整帮助文档。
本文作者:一起来学python
本文链接:https://www.cnblogs.com/c-x-a/p/17227402.html
版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
2022-03-17 console被禁用后打印
2017-03-17 Node 7.6默认支持Async/Await
2017-03-17 php学习之mysqli的面向对象