Java.io.tmpdirの現在の値を取得するLinuxコマンドが必要ですまた、すべてのシステムプロパティを取得するコマンドを教えてください。
JDKは、目標を達成できるツールを提供します。指定したコマンドを使用して、システム変数Java.io.tmpdir
の値を表示できます。
jinfo <process id> | grep "Java.io.tmpdir"
<process id>
は、システム変数の値を表示するJavaプロセスの番号です。 JavaプロセスのIDで、マシンで実行されているすべてのJavaプロセスを一覧表示するjps
ツールを使用して取得できます。
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クラスを実行します)を作成できます。
ブラックボックスの場合Java以前にデプロイしたアプリケーションの場合、次のコマンドを実行してJava.io.tmpdir
の値を見つけることができます。
ps -ef | grep Java.io.tmpdir
特にTomcatアプリでは、次のような出力が得られる場合があります。
-Djava.io.tmpdir=/usr/local/Tomcat/temp
一時ディレクトリの場合:良い答えがあります ここ 。
すべての環境変数について、env
コマンドを試してください。
推奨 ツールはjcmdになり、次のように使用します。
jcmd $pid VM.system_properties | grep Java.io.tmpdir