使用 grep 看不到与模式匹配的文件?

使用 grep 看不到与模式匹配的文件?

我非常熟悉使用 grep 和管道来排除所有不匹配模式的内容。但我可以使用 grep 排除所有匹配模式的内容吗?我认为这会起作用,

-v

选项,如下所示:

查找/media -name“somenamehere”| grep -v“权限被拒绝”

但这不起作用。知道为什么不起作用吗?我应该做什么?

答案1

Permission denied” 来自find输出到标准错误而不是标准输出,并且该grep部分不会影响 stderr 中显示的内容。您可以通过以下两种方式过滤掉它们:

将 stderr 重定向至/dev/null

find /media -name "somenamehere" 2>/dev/null

将 stderr 重定向到 stdout

find /media -name "somenamehere" 2>&1 | grep -v "Permission denied"

输入输出重定向的其他资源

相关内容