¿Hay alguna manera de obtener el UID del usuario en la máquina Linux usando Java? Conozco el método System.getProperty("user.name");
, pero devuelvo el nombre de usuario y estoy buscando UID.¿Hay alguna manera de obtener el UID del usuario en la máquina Linux usando Java?
Respuesta
puede ejecutar el comando id
y leer el resultado.
por ejemplo:
$ id -u jigar
de salida:
puede ejecutar comandos por
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) {
}
Si puede influir en la forma en que se inicie la máquina virtual de Java, que podría traspaso del UID como una propiedad de usuario:
java -Duserid=$(id -u) CoolApp
En su coolapp, simplemente puede buscar la identificación con:
System.getProperty("userid");
Saludos,
Martín.
Simplemente abra el archivo /etc/passwd
y busque la línea que tiene un usuario igual a System.getProperty("user.name")
.
que no funciona en sistemas que utilizan otros métodos para mantener la base de datos de usuario, p. [NIS] (http://en.wikipedia.org/wiki/Network_Information_Service) o [LDAP] (http://en.wikipedia.org/wiki/Lightweight_Directory_Access_Protocol) etc. (normalmente se usa en clústeres) –
Otra opción sería llamar a getuid() usando JNI.
- 1. Obtener el UID de Linux de una aplicación de Android
- 2. ¿Hay alguna manera de obtener la entrada del usuario sin presionar la tecla enter?
- 3. ¿Hay alguna manera de inspeccionar el rpath actual en Linux?
- 4. ¿Hay alguna manera de iniciar/reiniciar/detener el servidor Apache en Linux como usuario no root?
- 5. ¿Hay alguna manera de descompilar Linux .so?
- 6. ¿Hay alguna manera de averiguar qué está usando un módulo kernel de Linux?
- 7. ¿Hay alguna manera de crear una señal definida por el usuario en Linux?
- 8. ¿Hay alguna manera de obtener detalles del certificado SSL usando JavaScript?
- 9. ¿Hay alguna manera fácil de obtener ServerName en Symfony?
- 10. ¿hay alguna manera de obtener la IP del cliente en redis?
- 11. ¿Hay alguna manera de instalar solo el cliente mysql (Linux)?
- 12. ¿La mejor manera de obtener la identificación de la máquina en Linux?
- 13. ¿Hay alguna manera fácil de obtener programáticamente el alfabeto?
- 14. en Python y Linux cómo obtener la identificación del usuario
- 15. ¿Hay alguna forma de encontrar el nombre del sistema operativo usando Java?
- 16. ¿Hay alguna manera de obtener el tamaño de un archivo en .NET usando un método estático?
- 17. ¿Hay alguna manera de obtener el nombre de la función de llamada dentro del destinatario?
- 18. ¿Hay alguna manera de obtener el objeto predeterminado de $ .ajax?
- 19. elisp: ¿Hay alguna manera de obtener el nombre del módulo .el actual (como __FILE__ en C)?
- 20. ¿hay alguna manera de encontrar la lista de configuraciones regionales válidas en mi Linux utilizando Perl?
- 21. ¿Hay alguna manera de obtener un REPL en pydev?
- 22. ¿Hay alguna manera fácil de obtener datos de usuario de AuthComponent desde una vista en CakePHP?
- 23. ¿Hay alguna manera de obtener datos ortográficos de un NSString?
- 24. ¿Nombre actual de la máquina Java y usuario conectado?
- 25. ¿Hay alguna manera de omitir el parámetro?
- 26. ¿Hay alguna manera de depurar aplicaciones web usando Eclipse?
- 27. ¿Hay alguna manera de activar mousemove y obtener event.pageX, event.pageY?
- 28. Cambiar UID/GID solo de un hilo en Linux
- 29. ¿Hay alguna manera de verificar la codificación del conjunto de caracteres del archivo .txt con Java?
- 30. ¿Hay alguna manera de obtener PartionKeys distintas de una Tabla
Sería mucho más fácil de analizar si ejecutó "id -n" –
'id -u' solo imprimirá el UID. –
dogbane
@dogbane gracias revisa la actualización. –