当前位置: 首页 > 面试题库 >

如何在Java或Linux上的JRuby中找到我的PID?

锺离卓
2023-03-14
问题内容

我需要找到Linux平台上当前正在运行的进程的PID(它可以是与系统有关的解决方案)。Java不支持获取进程ID,并且JRuby当前在Ruby方法Process.pid中存在一个错误。

还有另一种获取PID的方法吗?


问题答案:

如果安装了procfs,则可以通过/ proc /
self符号链接找到进程ID,该链接指向一个名为pid的目录(这里还有文件以及其他相关信息,包括PID,但该目录为在这种情况下,您需要)。

因此,使用Java,您可以执行以下操作:

String pid = new File("/proc/self").getCanonicalFile().getName();

在JRuby中,您可以使用相同的解决方案:

pid = java.io.File.new("/proc/self").canonical_file.name


 类似资料:
  • 问题内容: 这不起作用。可以在查找中完成吗?还是我需要xargs? 问题答案: 将管道符号解释为运行多个进程并将一个进程的输出通过管道传递到另一进程的输入的指令是外壳程序的职责(/ bin / sh或等效命令)。 在您的示例中,您可以选择使用顶级外壳执行管道,如下所示: 就效率而言,此结果花费了find的一次调用,zcat的多次调用和agrep的一次调用。 这将导致仅产生一个agrep进程,该进程

  • 问题内容: 如何在Grails中找到任意用户的主目录?在Linux上,通常是/ home / user。但是,在某些操作系统上,例如OpenSolaris,路径为/ export / home / user。 问题答案: 对于类似UNIX的系统,您可能希望使用shell 执行“ ”(因此可使用运行)。

  • 问题内容: 在Oracle Enterprise Linux中,当我输入时 我已经安装了Java 1.6,并且具有以下功能 我该如何解决这个问题? 谢谢 问题答案: 您可以使用以下命令将Java路径之一添加到PATH变量。 您可以将此行添加到主目录中的.bashrc文件中。将此添加到.bashrc中将确保每次打开bash时都会更新PATH变量。

  • 问题内容: 我愿意将文件保存在用户的“我的文档”文件夹中。 我试图得到这样的位置: 然后,我意识到这在将语言设置为另一种语言(例如法语)的系统中不起作用。 还有另一种方法可以有效地获取“我的文档”文件夹吗? 问题答案: 如果您不介意使用Swing,显然可以使用以下技巧: (来源:http : //www.rgagnon.com/javadetails/java-0572.html)

  • 这个命令给出了正确的更新版本,因此我认为JDK安装正确。我需要知道它的位置。如何找到JDK的路径?

  • 我主罐子里有一些资源包 我根据默认语言环境检索资源包,如下所示 但是,我想向用户提供一个支持的可用语言列表,以便用户可以选择一种可能不同于其默认计算机的语言 但我在ResourceBundle中找不到列出可用区域设置的方法,我不想硬编码一个列表,因为当添加另一个资源包时,我可能会忘记更新它。 编辑 由于我只使用不同语言的资源包(我没有国家细化),所以我通过迭代所有已知语言代码生成了一个列表,并将每