如何获取我已阅读的文件的目录树

如何获取我已阅读的文件的目录树

我想获取服务器中我有读取权限的所有文件的目录树。我该怎么做?

答案1

我想到两种方法,findtree。我认为这两种方法tree更适合你的问题。

寻找
find优点是它是一个基本包,可能在任何 Linux 发行版中找到。缺点是它不会生成树视图。grep查找错误也不容易。而是添加适当的-perm测试。以下示例将查找具有/用户、组和其他读取权限的所有目录,并将标准错误发送到/dev/null

find / -type d -perm /u=r -perm /g=r -perm /o=r 2>/dev/null


虽然tree默认情况下可能未安装,但它位于存储库中。它确实会创建一个树视图。如果运行的用户tree没有读取权限,则简单grep -v error将从输出中删除目录。但是,删除错误可能会留下多余的格式。 -d仅列出目录。-p打印每个文件的文件类型和权限(根据 ls -l)。grep -v打印与模式不匹配的行,error

tree -d -p / | grep -v error

相关内容