ヒアドキュメント
Here document
heredoc とも呼ばれる。
ソース、スクリプトの中にドキュメント(生の文字列の複数行にわたる羅列)を埋め込む方法
POSIX のヒアドキュメントの定義
https://pubs.opengroup.org/onlinepubs/9799919799/utilities/V3_chap02.html#tag_19_07_04
シェルスクリプトでは、<< または <<- を使ってヒアドキュメントを指定する。
cat コマンドは
code:heredoc.sh
#!/bin/sh
cat <<__EOT__
Hello
World!
__EOT__
<<- にすると先頭のタブ文字を除去してくれる。(要するにインデントできるようになる。)
ヒアドキュメントの中では展開機能が働いていることに注意。
このため、$があると展開されてしまう。これを避けるにはバックスラッシュを付けてエスケープする。
数字を付けるとその番号のファイルディスクリプタに取り入れられる。
code:one.sh
1<<__EOT__