在su mqm命令之后无法在shell脚本中运行命令,但能够在putty中运行吗?请让我知道如何执行。

时间:2013-08-13 09:41:25

标签: bash queue ibm-mq

我的剧本是,

#!/bin/bash

su mqm
echo "DISPLAY QLOCAL (<QUEUENAME>) CURDEPTH" | runmqsc QUEUEMANAGER

同样的命令在putty中工作,但不能通过脚本工作。

2 个答案:

答案 0 :(得分:1)

putty是交互式命令行。试试下面的内容。可以使用bash变量。

#!/bin/bash
su - mqm -c "echo 'DISPLAY QLOCAL (<QUEUENAME>) CURDEPTH'|runmqsc QUEUEMANAGER"

答案 1 :(得分:1)

“su mqm”与“su - mqm”不同。

来自su的手册页

  

- , - l, - login

make the shell a login shell

因此,您需要用短划线“ - ”来拾取mqm的个人资料。

如有疑问,请输入man su(或其他命令)以获取更多信息。