※ ChatGPTを利用し、要約された質問です(原文:スクリプトのエラー「unexpected EOF while looking for matching `"'」の解決法は?)
スクリプトのエラー「unexpected EOF while looking for matching `"'」の解決法は?
このQ&Aのポイント
RedHat9上で作成しているスクリプトに関しての質問です。
スクリプトの「if [ -z "$SSH_PORT_FWD_KEKKA" ]; then」で引っかかっているエラーについて解決法を教えてください。
スペースがある文字列を引数に用いる際は、""で括る必要があります。該当箇所を修正することでエラーを解消することができます。
スクリプトのエラー「unexpected EOF while looking for matching `"'」の解決法は?
RedHat9上で作成しているスクリプトに関しての質問です。
#!/bin/bash -x
/bin/date
MAIL=user33
SCRPT_NAME=sshPortFoward.cron
HOST=foo.hoge.com
UNAME=user01
PASSWD=xxxxxxxx
SRC_FWD_PORT=60143
DST_FWD_PORT=143
SSH_PORT=60001
SSH_PORT_FWD_KEKKA=`/bin/ps ax | /bin/grep $HOST | /bin/grep $SRC_FWD_PORT | /bin/grep $DST_FWD_PORT | /bin/grep $UNAME`
if [ -z "$SSH_PORT_FWD_KEKKA" ]; then
( /bin/date ; /bin/ps ax | /bin/grep $HOST | /bin/grep $SRC_FWD_PORT | /bin/grep $DST_FWD_PORT | /bin/grep $UNAME) | \
/bin/mail -s $SCRPT_NAME":could ssh port forward $MAIL
fi
というスクリプトで
「if [ -z "$SSH_PORT_FWD_KEKKA" ]; then」で引っかかっているみたいです。
++ /bin/ps ax
++ /bin/grep foo.hoge.com
++ /bin/grep 60143
++ /bin/grep 143
++ /bin/grep user01
+ SSH_PORT_FWD_KEKKA=
/etc/cron/ip_adr_change.cron/sshPortFoward.cron: line 17: unexpected EOF while looking for matching `"'
/etc/cron/ip_adr_change.cron/sshPortFoward.cron: line 19: syntax error: unexpected end of file
とエラーになってしまいます。
「予想外のEOF!?」という意味ですかね。
文字列にスペースがあるので「""」で括っているのですが、、、
どういう風に訂正したらいいんでしょうか?
お礼
有難うございます。 「/bin/mail -s $SCRPT_NAME":could ssh port forward 「$MAIL」 で解決できました。どうもお騒がせ致しました。