Unix 获取java.io.tmpdir当前值的Linux命令
我需要一个Linux命令来获取java.io.tmpdir的当前值Unix 获取java.io.tmpdir当前值的Linux命令,unix,properties,command,system,Unix,Properties,Command,System,我需要一个Linux命令来获取java.io.tmpdir的当前值 您还可以告诉我获取所有系统属性的命令。对于temp dir:有一个很好的答案 对于所有环境变量,请尝试使用env命令。JDK提供了可以实现目标的工具。使用指定的命令,可以显示系统变量java.io.tmpdir的值 jinfo <process id> | grep "java.io.tmpdir" 所有JDK工具都位于$JAVA_HOME/bin目录中 java.io.tmpdir是java系统属性之一,因此其值
您还可以告诉我获取所有系统属性的命令。对于temp dir:有一个很好的答案
对于所有环境变量,请尝试使用
env
命令。JDK提供了可以实现目标的工具。使用指定的命令,可以显示系统变量java.io.tmpdir
的值
jinfo <process id> | grep "java.io.tmpdir"
所有JDK工具都位于$JAVA_HOME/bin
目录中
java.io.tmpdir
是java系统属性之一,因此其值仅存在于jvm中。要了解java.io.tmpdir
属性的值,还可以用java编写一个简单的程序。它可能类似于以下代码:
public class JSystemProperties {
public static void main(String[] args) {
System.getProperties().list(System.out);
}
}
上面的代码将打印所有java系统属性,但是您可以修改它,只打印一个名为通过
args
数组传递的系统属性(使用system.getProperty(key)
方法)。编译此类后,您可以创建脚本(将运行编译的java类),该脚本可以作为Linux命令处理,以获取java系统属性的当前值。对于我过去部署的黑盒java应用程序,我有时能够通过执行以下命令找到java.io.tmpdir
的值:
ps-ef | grep java.io.tmpdir
尤其是使用tomcat应用程序,您可能会得到如下输出:
-Djava.io.tmpdir=/usr/local/tomcat/temp
工具现在是jcmd,使用它就像:
jcmd $pid VM.system_properties | grep java.io.tmpdir
“系统属性”是指环境变量吗?附加到进程时出错:sun.jvm.hotspot.debugger.DebuggerException:无法附加到进程尝试切换到根用户或启动jvm的同一用户此程序需要导入java.util.properties。我认为将其编辑为System.getProperties().list(System.out)是有意义的;
jcmd $pid VM.system_properties | grep java.io.tmpdir