我想确定Tomcat是否从ruby脚本运行。我的想法是运行以下bash命令来查找是否存在Tomcat的关联PID
ps -axe | grep tomcat | grep java | awk '{print $1}'
当我在bash中单独运行命令时,如果Tomcat正在运行,它将返回PID,否则它将不返回任何内容。
当我从ruby
运行命令时puts `ps -axe | grep tomcat | grep java | awk '{print $1}'`
即使Tomcat实际上没有运行,也会始终打印PID。为什么在Ruby中总是返回PID?我究竟做错了什么?有没有更好的方法来实现我的目标?
答案 0 :(得分:2)
您始终返回PID,因为tomcat
和java
也是您用来检查tomcat
是否正在运行的命令的一部分。检查tomcat
是否存活的一种方法是尝试检查是否可以从tomcat服务器下载URL。