![18행의 구문 오류: `<<'가 일치하지 않습니다.](https://linux55.com/image/89117/18%ED%96%89%EC%9D%98%20%EA%B5%AC%EB%AC%B8%20%EC%98%A4%EB%A5%98%3A%20%60%26lt%3B%26lt%3B'%EA%B0%80%20%EC%9D%BC%EC%B9%98%ED%95%98%EC%A7%80%20%EC%95%8A%EC%8A%B5%EB%8B%88%EB%8B%A4..png)
이건 내 스크립트야
#!/bin/bash
stty intr ^C erase ^H kill ^U
p_id=`ps -ef|grep iucmh|grep iuc|grep MSC015|grep START|awk -F" " '{print $2}'`
vLogin=`echo "iucmh/iucmh123@4s_MH"`
if [ -z "$p_id" ]; then
sqlplus -s ${vLogin} <<EOF
set pagesize 0
feedback off
verify off
heading off
echo off;
UPDATE IUC_CON_PARAMETERS
SET F_PARAM_VALUE=0
WHERE F_PARAM_NAME LIKE 'MSC015_PROCESS_ID'
EXIT;
EOF
echo "Working"
# fi
else
echo "Process is already Running"
fi
이 스크립트를 실행하면 다음 오류가 발생합니다.
Syntax error at line 18 : `<<' is not matched.
답변1
코드는 양호하며 bash
언급한 오류 메시지가 포함되어 있지 않습니다.
노력하다:
#!/bin/bash
if [ bla ]; then
cat <<EOF
set pagesize 0
feedback off
verify off
heading off
echo off;
UPDATE IUC_CON_PARAMETERS
SET F_PARAM_VALUE=0
WHERE F_PARAM_NAME LIKE 'MSC015_PROCESS_ID'
EXIT;
EOF
echo "Working"
# fi
else
echo "Process is already Running"
fi
확인합니다. 그래서 귀하의 메시지는 명령에서 나온 것 같습니다 sqlplus
.