包含grep的参数
有人可以解释为什么当我打电话给grep
时,我会得到以下输出吗?
dbliss@nx5[~]> grep -rnwl --include=ardid.sh.e* . -e "pkg_resources"
grep: ./.pulse/a319a33547084e303e0286aa00000023-runtime: Permission denied
grep: ./.pulse/2d3380c658b942aac267d6570000001f-runtime: Permission denied
grep: ./.pulse/d1aa29d3e0e227d33d032c9f00000020-runtime: Permission denied
grep: ./.pulse/e7a8f36648b96d90ecbddd2f00000018-runtime: Permission denied
grep: ./.pulse/922bdeb7e34db855d003e2fd00000019-runtime: Permission denied
grep: ./.pulse/2e970606c3a2bfa06aa690e600000018-runtime: Permission denied
grep: ./.pulse/c113767245ecdc7cb59125af00000017-runtime: Permission denied
grep: ./.pulse/0202df89e10e160883b6aa8200000021-runtime: Permission denied
我试图限制搜索到符合模式ardid.sh.e*
- 即,从ardid.sh.
开始ardid.sh.
,之后是其他任何字符。 但是,输出显示,在一堆文件.pulse
目录搜索到不包括ardid
在他们的名字。
如果这是错误的呼叫,我应该做什么?
检查这些文件是否是文件,而不是目录或符号链接。
grep可能试图访问它们以搜索与您的模式相匹配的文件,并且尽管使用了--include
参数,但仍然失败。
最有可能的是,输出不是grep
产生的标准输出的一部分,而是标准错误输出。 grep
必须访问文件内容才能扫描搜索模式。 为此,它需要文件的读取权限和进入目录的权限。 如果文件或目录无法获得访问权限,它会发布该报告。
如果您简单地删除错误输出以仅取回标准输出,您可以轻松测试:
grep -rnwl --include=ardid.sh.e* . -e "pkg_resources" 2 > /dev/null
可能该命令的输出不会再显示这些条目......
链接地址: http://www.djcxy.com/p/78059.html