IBM i OS / 400 QSH - shell脚本

时间:2013-08-02 03:29:33

标签: shell startup tivoli

我为Tivoli Workload Scheduler提供了一个启动/停止脚本,它将在其中启动/ stp [IBM i中的TWS服务。

    # CHECK ROOT USER
    WHO=`id | cut -f1 -d" "`
    if [ "$WHO" = "uid=0(root)" ]
    then
    su TWSSVC -c "/etc/rc.d/init.d/tebctl-tws_cpa_agent_TWSSVC stop"
    exit $?
    fi

    /etc/rc.d/init.d/tebctl-tws_cpa_agent_TWSSVC stop
    exit $?

问题是,在OS / 400中,root的等效值是QSECOFR,所以我修改了这行

 if [ "$WHO" = "uid=0(root)" ]

 if [ "$WHO" = "uid=0(QSECOFR)" ]

然后我在下一行收到错误:

 su TWSSVC -c "/etc/rc.d/init.d/tebctl-tws_cpa_agent_TWSSVC stop"

 /TWSSVC/TWS/ShutDownLwa: 001-0019 Error found searching for command su. No such path or directory.   

如何更改为脚本,当它是QSECOFR时,它将进入TWSSVC并触发启动/停止脚本?我对OS400不太熟悉。我在qsh环境中触发了这个脚本。

1 个答案:

答案 0 :(得分:0)

您可以尝试以下操作;

sudo TWSSVC -c "/etc/rc.d/init.d/tebctl-tws_cpa_agent_TWSSVC stop"

告诉我它是怎么回事。