Javaコードからログインしたユーザーを探す必要があるので、次のオプションを使用します: Runtime.getRuntime.exec( "who") Runtime.getRuntime.exec( "who am i")Runtime.getRuntime.exec( "who am i")希望の結果が得られません
どちらも同じ結果を返します(プロンプトでwhoコマンドを実行すると結果が得られます)。 スペースの後に何も認識していないと思います。私は他のコマンドでも同じ結果を試した。
コードに問題がありますか、いくつかの環境を設定する必要があります、plz help。
http://stackoverflow.com/questions/525212/how-to-run-unix-shell-script-from-java-code – stacker
コマンド「whoami」が便利かもしれません。それはあなただけのユーザーの名前を提供します。また、ほとんどのシェルはUSERという環境変数を定義しています。 'System.getProperty(" user.name ")'を通してアクセス可能です。 – jackrabbit
さらに、このアプローチは、javaプロセスの所有者を返します。ユーザがログインしなければならないアプリケーションを作成していて、そのユーザIDを取得したい場合、これはあなたが望むものを与えるものではありません。 – DaveH