【问题标题】:How can I check if a process is running in Linux? [closed]如何检查一个进程是否在 Linux 中运行? [关闭]
【发布时间】:2014-10-01 20:25:50
【问题描述】:

我有一个脚本可以检查 jar 文件,如果它的运行 echo 运行 else 将执行 jar 文件。但是每次我运行我的脚本时,下面的命令似乎都会返回一个不同的值

ps aux | grep some.jar | grep -v grep | wc -l

当我只运行ps aux 时,我可以看到一些没有相同的 jar 文件,但只有一个进程在运行。

还有其他方法可以检查正在运行的 jar 文件吗?

我可以用pgrep -fl java代替上面的命令吗?

【问题讨论】:

  • 使用锁定文件。也使用grep [s]ome.jar,这样就不需要grep -v。最后,可以使用grep -c输出一个计数...

标签: java linux bash


【解决方案1】:

试试这个,

ps aux | grep [s]ome.jar | wc -l

我只是自己测试过,应该可以解决问题 :-)

【讨论】:

  • 请阅读ps 的手册页。
【解决方案2】:

你可以尝试类似 pgrep -f java.*jarname 之类的东西

pgrep -fl java 将返回命令行中包含“java”的所有进程。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-06-19
    • 1970-01-01
    • 1970-01-01
    • 2012-01-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多