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 があります。シェル コマンドを呼び出したり、JNI を使用したりする必要はありません。
def uid = new com.sun.security.auth.module.UnixSystem().getUid()
Java VM の起動方法に影響を与えることができる場合は、uid を引き渡すことができます ユーザー プロパティとして:
java -Duserid=$(id -u) CoolApp
CoolApp では、次の方法で ID を簡単に取得できます。
System.getProperty("userid");
よろしく、
マーティン。