解決済みの質問
読んでないかもしれないけれど…訂正があります。
>「<<@EOD」から「@EOD」までの部分を
「<<@EOD」と「@EOD」に挟まれた部分を
>シェルの予約語やコマンド名でなければ別に何でも構いません。
終端の「@EOD」以外なら別に予約語などが入っていても問題ありませんので、
この行は無視してください。また、ヒアドキュメントの中でもコマンド置換は有効です。
$ today=<<EOF # バッククォートで囲む
>>`date`
>>EOF
$ echo $today
Mon Jun 09 22:28:08 JST 2003
このように変数 today には date コマンドが実行された結果が代入されます。
さて、役に立たなかったら遠慮なく斬ってくださって結構ですので、
一言お返事があると嬉しいな。では。
参考URL:http://www.linux.or.jp/JM/html/GNU_bash/man1/bash.1.html
投稿日時 - 2003-06-09 22:29:43
お礼
ご返事遅くなりまして申し訳ありませんでした。
大変勉強になりました。ありがとうございます。
投稿日時 - 2003-06-15 22:52:28
0人が「このQ&Aが役に立った」と投票しています
ベストアンサー以外の回答(1件中 1~1件目)
これは「ヒアドキュメント(here document)」といって、
スクリプトの中にデータを埋め込んで利用するための機能です。
この場合「<<@EOD」から「@EOD」までの部分を sqldba へのデータとして利用しています。
(「sqldba」は Oracle のコマンド?)
「EOD」は「End Of Document」の略だと思われますが、
シェルの予約語やコマンド名でなければ別に何でも構いません。
シェルに限らず Perl や Ruby、PHP などこの記法が使える言語は多いので、
覚えておいて損はありません。
参考URL:http://lagendra.s.kanazawa-u.ac.jp/ogurisu/manuals/sh-text/sh/node7.html
投稿日時 - 2003-06-04 09:35:13