root로 스크립트를 실행하고 있고 oracle 사용자가 정의되어 있는지 확인하려고합니다. 여기 내 대본이 있습니다 :
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
명령문 만 실행하면 작동합니다. 어떤 생각?
그리고 내가 왜 루트로 실행 중인지 묻지 마십시오. 나는 나쁜 행동을 알고 있지만 그것에 대해 할 수있는 일은 아무것도 없다.
왜 그냥 : $ 에코 {ORACLE_HOME : -ko}> /tmp/oracle.tmp 르) 문제에 주어진 샘플 코드 않는 한
당신은 다만 수, 단순화인가? –