2012-10-31 18 views
5

Ich möchte den Besitzer des aktuellen Prozesses in Unix mit Java kennen. Ich möchte den Besitzer des aktuellen Servers finden. Ich habe versucht, in Runtime.getRuntime() .exec() den Befehl "who am i" auszuführen, aber es gibt mir keine Ergebnisse zurück.Verwendung von Java, um den aktuellen Prozessbesitzer zu erhalten

Gibt es etwas falsch mit diesem Code oder eine Idee, wie kann ich den Besitzer des aktuellen Prozesses mit Java finden?

+0

Du brauchst sudo dafür, oder? – Shark

+1

@assylias Ich denke du solltest pst das als Antwort ... – ppeterka

Antwort

7

Das erste, was, glaube ich System.getProperty("user.name") sollte

zweite Sache für diese Arbeit, der Grund, Ihr Code nichts Rückkehr ist, weil der Befehl whoami ohne Leerzeichen so Ihre exec Linie sollte werden (vorausgesetzt, Sie laufen auf Windows über Cygwin oder über ein ** nixbasiertes System)

Process p = Runtime.getRuntime().exec("whoami"); 
+0

'Wer bin ich 'ist auch in Ordnung. [Mann, der] (http://unixhelp.ed.ac.uk/CGI/man-cgi?who+1) – ignis

+2

'Wer bin ich' zurückkehrt leer auf meinem System –

+1

Wenn Sie' Who' nicht hatten, Sie hätte etwas wie 'bash: command not found' gelesen. Ist 'wer wer 'auch leer? (vorausgesetzt, Sie sind auf Unix/BSD/Mac/Linux) – ignis

Verwandte Themen