2017-07-02 11 views
0

次のスクリプトスニペットを実行中に問題が発生しています。sql出力をシェルスクリプトのファイルにリダイレクト

$ORACLEHOME/bin/sqlplus -s $DBUSER/$DBPASSWORD <<EOF 
    set pages 0 feedback off 
    SELECT * FROM ERR_STG_ROAMING_PARTNER; 

EOF > Err_File.txt 

次のエラーメッセージが表示されます。

./Roaming.sh: line 213: warning: here-document at line 206 delimited by end-of-file (wanted `EOF') 
./Roaming.sh: line 214: syntax error: unexpected end of file 

助けてください。

答えて

3

これを試してみてください:

ある
$ORACLEHOME/bin/sqlplus -s $DBUSER/$DBPASSWORD > Err_File.txt <<EOF 
    set pages 0 feedback off 
    SELECT * FROM ERR_STG_ROAMING_PARTNER; 

EOF 

、入力ヒアドキュメントのリダイレクト前の出力のリダイレクトを指定します。シェルは、EOFがheredocを終端する行に単独で存在することを期待しています。

エラーメッセージは、EOFを見つける前に(スクリプトファイルの)ファイルの終わりを見つけることについて不平を言っています。 heredoc区切り文字にEOFを使用すると、ここで混乱することがあります。

+1

ありがとうございました!素晴らしい助け! – GSG

関連する問題