Grep 找到目录但 root 无法查看它

Grep 找到目录但 root 无法查看它

为什么 grep 可以找到一个文件夹,但 root 却无法查看该文件夹中的文件,也无法 cd 该文件夹?

这是终端输出使用grep -rh "addons27" /

在此输入图像描述

我试图在 OpenErp 6.0.4 服务器中找到releases目录

答案1

无法回答“为什么可以grep找到文件夹?”因为这个问题包含一个错误的前提。您看到的是某些文件的内容,而不是所检查文件的路径grep。您的 grep 找到了看起来像路径的文本。grep 检查的文件的实际路径未打印;如果您不使用,您将看到它-h

-h,--no-filename
压制输出中文件名的前缀。当只有一个文件(或只有标准输入)要搜索时,这是默认设置。

(来源:man 1 grep,强调我的)

“为什么 root 无法查看此文件夹中的文件或cd此文件夹中的文件?”的答案在您收到的错误消息中:没有这样的目录。也许这样的目录曾经是;或者它可能在另一台计算机上(所检查的文件grep源自该计算机)。

例子:

$ echo '/nonexistent/path something' > file1
$ echo '/another/fake/path whatever' > file2
$ 
$ grep -h path file1 file2
/nonexistent/path something
/another/fake/path whatever
$ 
$ grep path file1 file2
file1:/nonexistent/path something
file2:/another/fake/path whatever
$ 

file1file2是现有文件的路径。/nonexistent/path并且/another/fake/path只是在文件中找到的字符串。它们看起来像路径,但这并不意味着路径存在于文件层次结构中。

相关内容