18

java.io.tmpdir の現在の値を取得する Linux コマンドが必要です。また、すべてのシステム プロパティを取得するコマンドを教えてください。

4

4 に答える 4

32

JDK は、目的を達成するためのツールを提供します。指定したコマンドを使用して、システム変数の値を表示できますjava.io.tmpdir

jinfo <process id> | grep "java.io.tmpdir"

<process id>、システム変数の値を表示する Java プロセスの番号です。ツールを使用して取得できる Java プロセスの ID jps。マシンで実行されているすべての Java プロセスがリストされます。

Java プロセスのすべてのシステム変数を表示するには、次のコマンドを使用してください。

 jinfo <process id>

すべての JDK ツールは$JAVA_HOME/binディレクトリにあります。

java.io.tmpdirは Java システム プロパティの 1 つであるため、その値は jvm 内にのみ存在します。プロパティの値を調べるためjava.io.tmpdirに、Java で簡単なプログラムを作成することもできます。次のコードのようになります。

public class JSystemProperties {
    public static void main(String[] args) {
        System.getProperties().list(System.out);
    }
}

上記のコードはすべての Java システム プロパティを出力しますが、これを変更して、 (メソッドargsを使用して) 配列を介して渡した名前を持つシステム プロパティを 1 つだけ出力することができます。System.getProperty(key)このクラスをコンパイルした後、Java システム プロパティの現在の値を取得する Linux コマンドとして扱うことができるスクリプト (コンパイルされた Java クラスを実行する) を作成できます。

于 2014-03-07T10:20:06.943 に答える
14

過去にデプロイしたブラック ボックス Java アプリケーションの場合java.io.tmpdir、次のコマンドを実行することで値を見つけることができる場合がありました。

ps -ef | grep java.io.tmpdir

特に tomcat アプリでは、次のような出力が得られる場合があります。

-Djava.io.tmpdir=/usr/local/tomcat/temp

于 2015-10-19T21:28:11.877 に答える
2

一時ディレクトリの場合:ここに良い答えがあります。

すべての環境変数について、envコマンドを試してください。

于 2012-04-10T17:21:37.337 に答える