无法查看目录内的内容,但可以查看该目录内的文件

无法查看目录内的内容,但可以查看该目录内的文件

我有目录和文件

$HOME/tmp/file.txt

我想做到这一点,以至于我无法可视化 tmp 中的内容,但我可以可视化 file.txt 中的上下文,所以我制作了这部分

cd $HOME
cd tmp
bash: cd: tmp: Permission denied
ls tmp
ls: cannot open directory 'tmp': Permission denied

现在我无法查看 tmp 目录中的内容(正如我想要的那样)

但是我想访问 file.txt 里面的内容,所以当我输入时 cat $HOME/tmp/file.txt 它必须显示 file.txt 里面的内容而不是像这样: cat: /home/user/tmp/file.txt: Permission denied

答案1

您需要了解目录权限的工作原理。

read(r):允许列出目录中条目的名称,但不允许列出条目元数据或内容。
write(w):允许添加、删除或移动条目
execute(x):允许访问和修改条目内容和元数据。简而言之,就是搜索目录的权限。

因此,execute(x)仅目录权限就足以满足您的使用情况并让您实现所需的目的。至于cd您是否r+x需要lsr权限。

相关内容