【问题标题】:Viewing all directories that are world readable [closed]查看世界可读的所有目录[关闭]
【发布时间】:2013-09-29 07:33:51
【问题描述】:

我想编写一个 shell 脚本,它会告诉我哪些用户的主目录是世界可读的,这样我就可以很容易地看到我可以访问的目录。我试图弄清楚如何做到这一点。如果有人能指出我正确的方向,将不胜感激!

【问题讨论】:

  • 对于这样的系统命令,你可能在 SuperUser.SE 上运气更好
  • 您可以尝试findperm 选项,如果仍有问题,请询问超级用户。

标签: linux bash shell unix terminal


【解决方案1】:

你可以像这样使用find -perm

find /base/path -type d -perm +o+r

+o+r 将仅列出带有 word(其他)读取位的目录。

【讨论】:

    【解决方案2】:

    你检查了吗

    find /dir/to/search -type f -exec sh -c 'file -b {} | grep text &>/dev/null' \; -print
    

    来自Finding human-readable files on unix

    【讨论】:

      【解决方案3】:

      使用这个命令

      ll /path/to/your/dirextory/ | grep ^d......r..
      

      这将为您提供每个人都有权阅读的目录。

      【讨论】:

      • -1 ll 不是标准命令,解析ls 的输出是不好的做法。
      • @triplee,我同意 ll 不是标准命令,但在 POSIX 规范中描述了 ls,所以不明白为什么解析它的输出是不好的做法,只要因为它是正确完成的(这里不是这种情况)
      • @tripleee:感谢您的链接并指出文件名可以包含换行符!我从来没有遇到过带有换行符的文件名,所以对于命令行工作,可能可以不用它,但对于生产 shell 脚本,这是另一回事,我同意..
      猜你喜欢
      • 1970-01-01
      • 2016-03-31
      • 2011-12-14
      • 2011-01-15
      • 2018-05-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-10-14
      相关资源
      最近更新 更多