如何将参数传递给 jvmmon?

How to pass arguments to jvmmon?

我正在使用 jvmmon 收集转储。但我必须手动输入参数,我的意思是打印堆栈跟踪和线程转储路径等。有什么办法可以将所有内容放入一行或一条语句中。

现在怎么样了?

jvmmon
> print to file
> print stacktrace

我想要怎样?

jvmmon <something> print to file <something else> print stacktrace

有什么办法可以实现吗?

您可以考虑使用 jcmd 代替 运行 命令;但无论如何,这将需要有两个单独的命令而不是一个命令来执行两个不同的操作。

您可以使用以下命令轻松实现。

printf "PID\nprint to file\n/tmp/traces/$file.txt\nprint stacktrace\nexit\n" | jvmmon