![]() |
1
8
在新版本的findutils中,find可以执行xargs的工作(包括肾小球行为,例如只使用所需的grep进程):
使用
|
![]() |
2
6
如果存在包含空格的文件名风险,请记住使用-print0标志与-0标志一起查找xargs:
|
![]() |
3
4
xargs不会为每个文件启动新的进程。它把各种论点聚在一起。查看xargs的-n选项,它控制传递给子命令每次执行的参数数量。 |
![]() |
4
0
我看不出来
因为我认为“太多的文件”是一个shell限制,所以它也会在for循环中失败。 我已经说过了,我总是让xargs做一些咕哝的工作,将参数列表拆分为可管理的位,这样:
它不会为每个文件启动进程,而是为每个文件组启动进程。 |
![]() |
5
0
嗯,我也有同样的问题,但似乎我想出来的每件事都已经提到了。主要有两个问题。在一百万个文件目录上执行ls需要花费很长时间(在我的一个服务器上需要20分钟以上),而在一百万个文件目录上执行ls*则需要花费很长时间,并且会因“参数列表太长”错误而失败。
似乎有助于解决这两个问题。另外,如果您需要对这些文件执行更复杂的操作,您可以考虑将您的东西编写成多个线程。这里有一个用于编写cli脚本的python入门。 http://www.ibm.com/developerworks/aix/library/au-pythocli/?ca=dgr-lnxw06pythonunixtool&S_TACT=105AGX59&S_CMP=GR |
![]() |
sk123 · Shell脚本-如何在循环中显示变量名及其值 1 年前 |
|
sai · unix中使用python进行数据重组 1 年前 |
![]() |
FangQ · 如何使用jq打印由制表符“\t”分隔的JSON数组元素 1 年前 |
|
ROHAN · 我想显示包含一个括号的行,包括它的开头或结尾 1 年前 |
![]() |
Geomicro · 删除模式sed之间的逗号 1 年前 |