态
我的Expect_Output(缓冲区)如下多行。
status QM1
QM(QM1) Status(Running)
CPU: 0.02%
Memory: 106MB
Queue manager file system: 391MB used, 47.3GB allocated
[1%]
HA role: Primary
HA status: Normal
HA control: Enabled
HA preferred location: Here
mqa(mqcli)#
尝试了多个正则要选项,但是我一直在0,因为没有匹配。
regexp /^.*b(Running)b.*$ $qmgrstat
相似,获得" HA状态"的值。
什么是正确的正则语法。
不确定我理解。您只想匹配HA status
的值吗?如果是,那么此正则会这样做:
HA status:W*(.*)
如果要在" QM"状态运行时捕获HA状态,则可以执行
if {[string match {*Status(Running)*} $qmgrstat]} {
regexp {HA status:s+(S+)} $qmgrstat -> status
}
status[^v]*vQM[^v]*vCPU:[^v]*vMemory:[^v]*vQueue manager file system:[^v]*vHA role:[^v]*vHA status:[^v]*vHA control:[^v]*vHA preferred location:[^v]*vmqa[^v]*#v
如果您想要具有状态使用的完整文本行:[^v]*Status([^v]*
获得可以使用的HA状态的线:HA status:[^v]*
祝你好运!