私は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を? –