我以root身份运行脚本并试图查看用户oracle是否定义了ORACLE_HOME。这里是我的脚本:
su - $user << EOF 2>&1
if [ -n "${ORACLE_HOME:+x}" ]
then
echo "KO" > /tmp/oracle.tmp
else
echo "$ORACLE_HOME" > /tmp/oracle.tmp
fi
EOF
这是行不通的。它给了我if: Expression Syntax.
并且文件没有被创建。我认为这个问题与su
封装有关,因为当我单独运行if
声明时,它正在工作。任何想法 ?
请不要问我为什么我以root身份运行。我知道它的坏习惯,但我无能为力。
为什么不干脆:回声$ {ORACLE_HOME:-KO}> /tmp/oracle.tmp? – 2011-12-23 05:05:29