linux xargs grep,Linux:找到| xargs grep有局限性吗?

我历来执行过类似的事情:

find . 2>/dev/null | xargs grep -i something_to_find 2>/dev/null

如果我的pwd是barfoo(/ foo / bar / baz / foofoo / foobar / foobaz / barfoo),它会找到匹配项.但是,如果我cd到/ foo,它将不再找到匹配项.

条件:

>权限都是775

>目录不是符号链接

>它们都在同一个文件系统/服务器上

所以我很好奇是否有一个默认的-maxdepth应用于查找,或者是否有其他约束为什么这不起作用?

附加信息:

发布了一些很棒的评论.这是一些额外的信息:

>这适用于GNU,而非POSIX

> find –version:GNU find version 4.2.27

> grep –version:(GNU grep)2.5.1

> xargs –version:GNU xargs版本4.2.27

>删除STDERR的重定向与结果或缺乏结果无关

> barfoo中文件的路径(已知工作)没有空格,但/ foo / bar中其他目录中的文件可能有空格;但是,我不知道这会有什么问题

>我意识到我并没有具体的路径,但这些都是命名良好的目录,不要与任何设备混淆

有趣的发现:

第一个不起作用,但第二个不起作用:

>找到. -type f | xargs grep -i something_to_find

>找到. -type f -name“* .ext”| xargs grep -i something_to_find

甚至odder是-name“*.*”不起作用,必须给出文件扩展名;在搜索某些内容时可能会出现问题.

我想知道在最大错误计数或最大缓冲区大小之后是否有终止.我知道这些目录中有很多文件,但是在指定文件类型(限制结果)时它的工作原理很有意思.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值