我需要知道我可以读取哪些文件夹以及可以写入哪些文件夹。但是文件系统非常庞大,所以我无法逐个测试它,或者只是用脚本生成一个巨大的列表。我需要一种目录树,比如 inexplorer.exe
或dolphin
。但这只会根据过滤器显示文件夹,无论是写入访问权限还是读取访问权限
您知道如何在 Linux 或 Windows 上实现这一点吗?
欢迎任何其他想法
答案1
Linux 示例使用:
find
并sudo -u USERNAME test -w
检查写入权限,2>/dev/null
隐藏访问被拒绝的消息- 然后使用
sed
生成树视图:
# spaced tree view
[user@linux ~]$ find /home/ -type d 2>/dev/null -exec sudo -u USERNAME test -w '{}' \; -print | sed -e 's/[^-][^\/]*\// /g' -e 's/^//'
USERNAME
dir1
dir11
dir2
dir22
# or with dashes
[user@linux ~]$ find /home/ -type d 2>/dev/null -exec sudo -u USERNAME test -w '{}' \; -print | sed -e 's/[^-][^\/]*\//--/g' -e 's/^/ /' -e 's/-/|/'
|-USERNAME
|---dir1
|-----dir11
|---dir2
|-----dir22
要检查“读取”权限,请使用test -r
。要限制到某个文件夹深度,请使用find / -maxdepth 3
。要检查并将文件包含在输出中,请删除-type d
sudo -u USERNAME
如果您正在检查当前用户的访问权限,则可以排除