ヒアドキュメント (<<)
ヒアドキュメント記号 <<
の後に書かれたキーワードが制限文字列 (limit string) となり、次の行から制限文字列だけの行の直前までがコマンド文に標準入力として渡される。制限文字列 (limit string) としては EOS
や EOF
などがよく用いられる。
cat << EOS Hello, World. This is a pen. This is an apple. EOS
変数に代入する場合は cat
コマンドの実行結果を代入する。
var=$( cat << EOS hoge fuga piyo EOS )
参考:
bash で複数行の文字列の代入と、ヒアドキュメントを使わずに変数に格納する方法 | それマグで!
Here Documents | Advanced Bash-Scripting Guide (tldp.org)
How can I write a heredoc to a file in Bash script? – Stack Overflow
What’s the difference between <<, <<< and < < in bash? – Ask Ubuntu
Why is bash confusing this HEREDOC limit string as a command? – Unix & Linux Stack Exchange