これは馬鹿げた話で、私はこれを実行する方法を検索してみましたが、多くのサイトで同じことをするように指示されていますが、何もない動作します。
#!/bin/bash
message_content="$(cat <<-EOF
A
B
C
EOF
)"
echo $message_content > test
期待される出力cat test
:
A
B
C
実際の出力cat test
:
A B C
どうしたの?
答え1
これでうまくいきませんか?:
#!/bin/bash
cat <<EOF > test
A
B
C
EOF
または、次のようにすることもできます:
#!/bin/bash
message_content="$(cat <<-EOF
A
B
C
EOF
)"
echo "$message_content" > test
前のコメントで示唆したように。例:quote the variable