我正在grepping一大堆由git管理的代码,每当我做grep时,我都会看到成堆的形式的消息:
> grep pattern * -R -n
whatever/.git/svn: No such file or directory
有什么办法能让这些皱纹消失吗?
我正在grepping一大堆由git管理的代码,每当我做grep时,我都会看到成堆的形式的消息:
> grep pattern * -R -n
whatever/.git/svn: No such file or directory
有什么办法能让这些皱纹消失吗?
当前回答
您可以使用-s或——no-messages标志来抑制错误。
-s,——no-messages禁止错误消息
grep pattern * -s -R -n
其他回答
使grep始终返回0状态的一个简单方法是使用|| true
→ echo "Hello" | grep "This won't be found" || true
→ echo $?
0
如您所见,这里的输出值为0 (Success)
您可以使用-s或——no-messages标志来抑制错误。
-s,——no-messages禁止错误消息
grep pattern * -s -R -n
你试过xargs中的-0选项吗?就像这样:
ls -r1 | xargs -0 grep 'some text'
在grep中使用-I。
例如:grep SEARCH_ME -Irs ~/logs。
我将stderr重定向到stdout,然后使用grep的逆匹配(-v)来排除我想隐藏的警告/错误字符串:
grep -r <pattern> * 2>&1 | grep -v "No such file or directory"