Shell脚本:-ne的意外运算符

时间:2018-07-15 15:05:43

标签: bash sh

我有一个shell脚本,我想在其中检查它是否由root运行。如果不是,那么我将变量SUDO='sudo'设置为在后续命令之前。这样,用户会从外壳程序中收到一个很好的权限被拒绝的错误消息,并且如果他们使用sudo运行,它将正确地执行其业务。但是,对于以下代码,我得到了:

myscript.sh: [: -ne: unexpected operator

代码是:

#!/bin/sh

SUDO=""
if [ $EUID -ne 0 ]; then
    SUDO='sudo'
fi

我以如下方式运行它:sh myscript.sh作为这不是bash脚本。这不是sh vs bash afaik的问题。 shebang说/bin/sh,而我正在sh上运行它。

0 个答案:

没有答案