Linux bash 检查进程运行

标签 linux bash

<分区>

我不是 Linux bash shell 专家,我只是想检查我的 java 进程是否仍在运行.. 我已经编写了这个简单的 bash shell 脚本来验证我的 java 进程是否仍在执行...但输出始终是“Java 已完成...”

#!/bin/bash

until [ ` pgrep java ` ]; do
    echo Java still running...
    sleep 1
done
echo Java is done...

请问我的until语句有什么问题

最佳答案

如果是until ,循环执行,直到测试命令执行成功。只要此命令失败,循环就会继续。
在第一次迭代中,当 java 运行时,pgrep java 为 true 并且不执行循环体。

关于Linux bash 检查进程运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49486721/

相关文章:

bash - 如何在 Makefile 中使用 eval

c++ - 如何使链接器不排除未调用的函数?

linux - 用sed在标点符号后面加空格

java - 如何在JNI代码中包含cspi/spi.h头文件?

linux - 防止记录清除命令

bash - 使用 shell 脚本在远程服务器上执行命令

php - 如何禁用php中命令的输出

linux - 在 ec2-linux AMI 上安装最新版本的 vsftpd

linux - 从文本文件中指定的位置复制文件或将文件复制到文本文件中指定的位置

bash - 使用 sed 反转输入顺序