我正在尝试检查some_process
服务器上是否正在运行某个进程(假设称为)。如果是,则回显1,否则回显0。
这是我正在使用的命令,但仅部分起作用(下面的更多信息)。请注意,我需要一行编写脚本。
ps aux | grep some_proces[s] > /tmp/test.txt && if [ $? -eq 0 ]; then echo 1; else echo 0; fi
注:本[s]
中some_proces[s]
是防止grep
从返回本身。
如果some_process
正在运行,则"1"
得到回显,这很好。但是,如果some_process
未运行,则不会响应。
ps -Ccmd
查找命令名称为“ cmd”的进程,该进程可以完全消除grep
。ps
如果找不到匹配的进程,则会将退出代码设置为某个非零值。