如何获得用于启动进程的完整命令行


15

Eclipsed为我启动了一个过程,我希望看到使用的完整命令行。

我尝试了“ ps auxwww”,但似乎将路径截断为4096个字符,是否有任何方法可以使PS停止截断路径,或使用其他工具来查找完整路径?


嗯,也许答案是重新编译内核?wtf。stackoverflow.com/questions/199130/...
阿莱克斯·布莱克

就我而言,这是一个Java应用程序,您可以使用jconsole来获取完整的类路径
Alex Black

是否可以将其重定向到文件并获取整个命令行?
詹姆斯

1
我不这么认为,/ proc / {PID} / cmdline看起来被截断为4096个字符,这是内核中设置的硬限制
Alex Black

Answers:


24
cat /proc/{PID}/cmdline

其中{PID}是相关进程的进程ID。


1
/ proc / * / cmdline不包含尾随换行符,因此echo $(</ proc / 7851 / cmdline)提供更清晰的输出。
巴顿·奇滕登

4
精氨酸 只需阅读Alex Black发布的堆栈溢出链接...看起来像proc /.../ cmdline具有相同的4096个字符限制。
巴顿·奇滕登

4

该示例与java流程有关,这是一个可以显示一些其他流程详细信息的工具:jps。尝试一下,您可能已经拥有了-这是JDK

它与基本ps命令相似-但要理解一些Java规范。主要用途是识别正在运行的Java进程,然后使用其他 Java分析工具(例如)对其进行检查jstack

$ jps -ml  
31302 com.intellij.rt.execution.application.AppMain com.example.Foo some.properties
26590 com.intellij.idea.Main nosplash
31597 sun.tools.jps.Jps -ml

手册页中有关选项的摘录:

jps - Java Virtual Machine Process Status Tool

jps [ options ] [ hostid ]

[...]

-q  Suppress  the  output of the class name, JAR file name, and argu‐
    ments passed to the main method, producing only a list  of  local
    VM identifiers.

-m  Output the arguments passed to the main method. The output may be
    null for embedded JVMs.

-l  Output the full package name for the application's main class  or
    the full path name to the application's JAR file.

-v  Output the arguments passed to the JVM.

-V  Output  the  arguments  passed  to the JVM through the flags file
    (the   .hotspotrc   file   or   the   file   specified   by   the
    -XX:Flags=<filename> argument).

-Joption
    Pass  option  to  the  java  launcher called by jps. For example,
    -J-Xms48m sets the startup memory to 48 megabytes. It is a common
    convention  for -J to pass options to the underlying VM executing
    applications written in Java.

[...]

2

用管道将其插入“较少”的位置,左右滚动即可没有问题:)


2
用更少的管道不能解决截断问题。
亚历克斯·布莱克

嗯,对我有用。无论如何,看起来使用proc(上面建议)看起来像是一个不错的解决方案:)
ejes 2012年

我遇到的问题是proc被截断为4096个字符,您是否找到一种方法来超过该限制?
亚历克斯·布莱克
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.