我有从xargs重定向输出的问题,即我做了类似的事情:
find . -mmin -10 | xargs grep mypattern > greping
这将继续无限期地写入文件(我等到文件达到25GB左右)但是当我更改它以在最后添加管道到grep时我会得到正确的结果(大约25 kB文件):
find . -mmin -10 | xargs grep mypattern | grep 2013-07-11 > greping
我在这里缺少什么,为什么第一个代码段中的xargs
会一直写入文件?
Bash版本GNU bash, version 4.1.2(1)-release (x86_64-redhat-linux-gnu)
答案 0 :(得分:1)
将重定向文件从>greping
更改为>../greping
或>/tmp/greping
。
基本上,输出文件不应该在当前目录或其任何子目录中。
或尝试:
find . -mmin -10 | grep -Fx -v './greping' | xargs grep mypattern > greping