有没有办法在使用java的Linux机器上获取用户的UID?我知道System.getProperty("user.name");
方法,但它返回的用户名,我在寻找UID。有没有办法在使用java的Linux机器上获取用户的UID?
8
A
回答
11
您可以执行id
命令并读取结果。
例如:
$ id -u jigar
输出:
可以执行命令通过
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) {
}
2
如果你能够影响Java虚拟机是如何启动的,你可以切换的UID作为用户属性:
java -Duserid=$(id -u) CoolApp
在你CoolApp,你可以简单地取ID:
System.getProperty("userid");
问候,
马丁。
1
只需打开/etc/passwd
文件并搜索用户等于System.getProperty("user.name")
的行。
1
另一种选择是使用JNI调用getuid()。
相关问题
- 1. 有没有办法确定Firebase用户的UID是否有效?
- 2. 有没有办法在32位Windows机器上使用java的tensorflow?
- 3. 有没有办法来获取手机
- 4. 有没有办法在不使用onNewIntent的情况下获得NFC UID?
- 5. 有没有办法直接在Java中使用Linux命令
- 6. 有没有办法使用python获取本地机器的进程信息?
- 7. Linux上的Java机器人 - 没有大写字符(使用x11vnc)
- 8. 有没有办法使用JAVA SE获取JQuery可变内容?
- 9. 有没有办法为使用/ tokens资源的用户获取现有令牌?
- 10. 有没有办法通过Kohana获取用户机器上所有cookie的列表?
- 11. 有没有办法使用HttpPostedFile类获取上传进度?
- 12. 有没有办法在我的linux机器上发现粘贴操作?
- 13. 有没有办法在Webkit浏览器上使用jQuery 1.3.0获取$ .mobile.pageCreate?
- 14. 有没有办法提示用户在android上的输入法?
- 15. 有没有办法根据他们使用的hashtag获取用户列表?
- 16. 有没有办法使用facebook图形API获取用户的祖国名字?
- 17. 有没有办法在ASP.NET Identity 2.0中使用UserManager获取用户密码?
- 18. 有没有办法在java中获取数组的名称?
- 19. 有没有办法在iOS上获取用户主屏幕背景?
- 20. 有没有办法使用JavaAPI获取安装在ElasticSearch上的插件列表?
- 21. 有没有什么办法可以使用PDO获取上次提取的ID
- 22. 有没有办法使用C++在Java手机上运行程序?
- 23. 有没有办法从Flurry API获取用户ID?
- 24. Codeigniter,有没有办法自动获取用户错误报告?
- 25. 有没有办法使用Flickr api获取照片的路径?
- 26. 有没有办法通过使用httpwebrequest的ID获取元素?
- 27. shell脚本,以获取有关任何用户在Linux机器
- 28. 有没有办法通过cherrypy服务器获取客户端主机名
- 29. 在Linux机器上获取用户的默认电子邮件
- 30. 有没有办法在Delphi DataSnap REST服务器上使用JSONP?
如果您执行“id -n” – 2011-01-25 16:42:19
`id -u`将只会打印UID,解析起来会容易得多。 –
dogbane
2011-01-25 16:44:05