有没有办法使用java在Linux机器上获取用户的UID?
有没有办法使用java在Linux机器上获取用户的UID?我知道方法,但它返回用户名,我正在寻找UID。System.getProperty("user.name");
有没有办法使用java在Linux机器上获取用户的UID?我知道方法,但它返回用户名,我正在寻找UID。System.getProperty("user.name");
您可以执行命令并读取结果。id
例如:
$ id -u jigar
输出:
1000
您可以通过以下方式执行命令
try {
String userName = System.getProperty("user.name");
String command = "id -u "+userName;
Process child = Runtime.getRuntime().exec(command);
// Get the input stream and read from it
InputStream in = child.getInputStream();
int c;
while ((c = in.read()) != -1) {
process((char)c);
}
in.close();
} catch (IOException e) {
}
实际上有一个api。无需调用 shell 命令或使用 JNI,只需
def uid = new com.sun.security.auth.module.UnixSystem().getUid()