21得票3回答
xargs的默认分隔符能否更改?

我希望以下行为可以自动进行,无需使用选项显式指定: xargs -d '\n' 与大多数命令不同的是,你不能仅仅使用一个别名,因为管道不会识别别名(附带说一下,为什么要设计成这样呢?)。我还尝试创建自己的 ~/bin/xargs 脚本,但我觉得在脚本中像读取 "$@" 这样的字符串并不简单。...

21得票3回答
使用管道将 seq 命令的输出传递给 printf 命令以实现数字格式化。

我想使用printf和seq打印以下图案:0000 0001 0002 0003 我的问题是一旦我使用了:seq 0 10 | xargs printf %04d 我的所有输出都被格式化为与此相同的一行:0000000100020003 我仍然不擅长使用xargs。在这种情况下,我该如何正确地...

21得票4回答
如果xargs是映射,那么过滤器是什么?

我认为xargs 是UNIX shell的map函数。那什么是filter函数? 编辑:看起来我需要更加明确一些。 假设我有一个程序,它接受一个字符串作为参数,并以0或1的退出码返回。该程序将用作其所接受的字符串的谓词。 例如,我可能决定将字符串参数解释为文件路径,并将谓词定义为“此文件...

19得票1回答
使用正则表达式查找多个文件扩展名的命令

我在想在find命令中是否可以实现这个。我正在尝试查找所有具有以下扩展名的特定文件,然后再进行SED操作。这是我的当前命令脚本:find . -regex '.*\.(sh|ini|conf|vhost|xml|php)$' | xargs sed -i -e 's/%%MEFIRST%%/m...

19得票3回答
为什么“locate文件名| xargs vim”会导致终端行为奇怪?

当我执行 "locate 50local.policy | xargs vim" 命令时,会出现错误:"Vim: Warnung: Die Eingabe kommt nicht von einem Terminal"(翻译:Vim:警告:输入不来自终端)。 我可以成功使用vim编辑,但是当...

19得票4回答
从标准输入中使用wget或curl

我想要从stdin提供URL并下载网页。基本上,一个进程会不断地将URL输出到stdout或文件中,我希望将它们通过管道传递给wget或curl。(如果你愿意,可以把它想象成简单的网络爬虫)。 这似乎可以正常工作:tail 1.log | wget -i - -O - -q 但当我使用“t...

18得票4回答
Unix - "xargs" - 输出“在中间”(而不是在结尾!)

在Unix中,xargs应用的示例用法可能类似于:ls | xargs echo 这与(假设我在工作目录中有someFile和someDir/)相同:echo someFile someDir xargs将其输入放置在下一个命令的结尾(这里是echo的末尾)。 但有时候我希望xargs将其输...

18得票4回答
xargs执行字符串时出错了-我做错了什么?

我正在尝试将当前目录中所有大写文件名转换为小写。我尝试这样做: ls -1|gawk '{print "`mv "$0" "tolower($0)"`"}'|xargs -i -t eval {} 我在目录中有两个文件,Y和YY -t 参数用于调试,输出结果如下: eval `mv Y...

17得票3回答
xargs - 如果条件成立就输出{}

我有一些包含特定字符串的文件。我想要做的是,在某个位置搜索文件;如果文件存在,则grep该模式;如果为真,则执行某些操作。find -iname file.xxx| xargs -I {} if grep -Fq "string" {} ; then echo {} ; fi 问题如下: ...

16得票5回答
使用xargs执行多个命令

在当前目录中,我想打印文件名和其中的内容。 我可以通过以下方式分别打印文件名或内容:find . | grep "file_for_print" | xargs echo find . | grep "file_for_print" | xargs cat 但我想要的是将它们像这样同时打印出来...