加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Linux > 正文

ibm-mq – 如何检查IBM MQ for Linux中是否存在队列名称?

发布时间:2020-12-14 01:24:15 所属栏目:Linux 来源:网络整理
导读:如果[[$(dspmq | grep'(正在运行)’| grep“$QMgr”| wc -l | tr -d“”)!= 1]] 上面的代码是检查队列管理器是否正在运行. 是否有任何命令来检查队列管理器中是否存在给定的队列名称? 解决方法 除了Rob和T.Rob所说的之外,还添加了另一个建议. MQ v7.1及更
如果[[$(dspmq | grep'(正在运行)’| grep“$QMgr”| wc -l | tr -d“”)!= 1]]

上面的代码是检查队列管理器是否正在运行.

是否有任何命令来检查队列管理器中是否存在给定的队列名称?

解决方法

除了Rob和T.Rob所说的之外,还添加了另一个建议.

MQ v7.1及更高版本附带dmpmqcfg命令,您可以使用它来检查特定队列.

以下示例与您的示例一致,该示例检查队列管理器是否正在运行:

要使用dmpmqcfg检查是否存在任何类型的队列名称,您可以执行以下操作:

if dmpmqcfg -m ${QMgr} -t queue -x object -o 1line -n ${QName}|egrep '^DEFINE '; then
  echo "Queue ${QName} exists on Queue Manager ${QMgr}
fi

使用方法Rob Parker提供*来检查是否存在任何类型的队列名称:
*注意我使用了DISPLAY Q(而不是DISPLAY QLOCAL(

if printf "DISPLAY Q(${QName})" | runmqsc ${QMgr} 2>&1 >/dev/null; then
  echo "Queue ${QName} exists on Queue Manager ${QMgr}
fi

您的示例检查队列管理器运行可以简化为:

if dspmq -m ${QMgr}| grep --quiet '(Running)'; then
  echo "Queue Manager ${QMgr} is Running"
fi

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读