構文エラー:シェルのファイルの予期せぬ終了
2022-02-25 01:56:22
次のようなシェルを書いたら、syntax error: unexpected end of file で実行されました。
while true
する
sqlplus / as sysdba << EOF!
select sysdate from dual;
これでは、先頭行にEOFが書けない!?
完了
次のEOF! を先頭行に書かなければならないことが判明した。もし、loop! EOFはどこに書いても良いのですが、ループがHere Documentsに属している場合、このEOF! はHere Documentsの終わりを表しているのです。SHELLでは、EOF! はその行に現れる唯一の内容でなければならず、空白であってはならないと規定されているので、Cプログラムのように美観のためにEOF! を右へインデントすることはできません。したがって、このEOF! はこの行で一時的に強調表示される。
ループを削除して直接書き込むと実行可能です。
sqlplus / as sysdba << EOF!
select sysdate from dual;
EOF! # 先頭が空白でも、空白でなくても影響なし
関連
-
[解決済み】"ERROR. "を取得。ZooKeeperからマスターアドレスを取得できない。znode data == null" Hbaseシェル使用時
-
[解決済み] のコマンドがzshで見つからない [閉店]。
-
[解決済み] タブを区切り記号として指定するカットコマンド【閉じた状態
-
[解決済み] Centos 6 /usr/sbin/sendmail - 件名を付けてメールを送信する方法は?
-
[解決済み] usr/bin/envはどのような効果があるのでしょうか?
-
[解決済み] date: 余分なオペランド %d' エラー
-
バッドサブスティチューション
-
シェルwhileループのエラー曖昧なリダイレクトとwhileループの変数割り当て失敗問題
-
ハイブのsqlとシェルスクリプトを書いているときに、いくつかの痛い問題に遭遇しました
-
linux shell script cannot be executed, error syntax error near unexpected token `$'\r'' solution.
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン