使用Java或bash,如何列出所有可能的所有者和组。
例如,如果我在一个 shell 中执行以下命令,其所有者显然是错误的:
chown ljafdj ~/Desktop/test.txt
我的输出结果是
chown: 无效的用户: `ljafdj'
chgrp
也是同样的情况
那么我该如何使用Bash或Java获取有效用户列表?
这是为了一个Android应用程序,我需要向用户显示可能性,以便他们可以在需要时进行更改。
使用Java或bash,如何列出所有可能的所有者和组。
例如,如果我在一个 shell 中执行以下命令,其所有者显然是错误的:
chown ljafdj ~/Desktop/test.txt
我的输出结果是
chown: 无效的用户: `ljafdj'
chgrp
也是同样的情况
那么我该如何使用Bash或Java获取有效用户列表?
这是为了一个Android应用程序,我需要向用户显示可能性,以便他们可以在需要时进行更改。
Android中的组是硬编码的,"用于隔离进程和授予权限。" 但是,如果你想获取在线用户名,可以使用AccountManager.getAccounts()
。
getent passwd
对于群组:
getent group
只需解析第一个字段(冒号前面的部分)即可获取实际名称。
/etc/nsswitch.conf
了吗?它定义了哪些是用户名称和组的有效来源?(也就是说,如果这样的文件存在) - fge/etc/pam.d
目录?也许查看此目录中的文件会给您一些提示... - fge