私はこのようなことをしたいです:
$ NAME=John
$ cat << '==end' > test
My name is $NAME
==end
$ cat test
My name is John
何か案は?
cat <<EOF > test
My name is $NAME
EOF
あるいは
cat <<==end > test
My name is $NAME
==end
私のために働いた。
あなたが取るときのように見えます==end
の中に '
変数は代用しません。
ああ、これは man page にあります(3.6.6を参照):
ヒアドキュメントの形式は次のとおりです。
<<[-]Word here-document delimiter
Wordに対して、パラメーター展開、コマンド置換、算術展開、またはパス名展開は実行されません。 Wordのいずれかの文字が引用符で囲まれている場合、区切り文字は、 Wordでの引用の削除、およびヒアドキュメントの行は展開されません。 Wordが引用符で囲まれていない場合、ヒアドキュメントのすべての行は、パラメータ展開、コマンド置換、および算術展開の対象になります。 [...]