繁体   English   中英

从bash ubuntu运行python命令

[英]Run python command from bash ubuntu

我已经在Ubuntu 14.04中安装了odoo 8.0(以前称为openerp)源代码
当我从终端尝试此命令(运行odoo服务器)时

python odoo.py

它运行正常。

但是,我怎么知道python命令的返回值?
我想查看命令是否正常运行,还是引发异常?

所以我可以使* .sh文件运行该命令。

我已经尝试过此代码

if [ -f odoo.py ]; then
    python odoo.py
    rc=$?;
    if [ $rc !=0 ]; then
        echo "Error when starting odoo-server,"
        echo "Odoo-server not started."
    else
        sleep 1
        echo "Odoo-server started."
    fi
else
    echo "Cannot found odoo.py"
    echo "Odoo-server not started."
fi

但是,当命令失败时
它总是给我这个输出

Odoo-server started

有人可以帮助我吗?

您的间距是错误的:

    if [ $rc !=0 ]; then

应该:

    if [ $rc != 0 ]; then

但这是文本测试,算术测试将是:

    if [ $rc -ne 0 ]; then

或最好:

    if (( rc != 0 )); then

但是,更好的方法是:

if python odoo.py
then
    sleep 1
    echo "Odoo-server started."
else
    echo "Error when starting odoo-server," >&2
    echo "Odoo-server not started." >&2
fi

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM