Das ist dumm, und ich habe versucht, nach einer Möglichkeit zu suchen, dies zu tun, und viele Websites weisen darauf hin, dasselbe zu tun, aberNichtsfunktioniert.
#!/bin/bash
message_content="$(cat <<-EOF
A
B
C
EOF
)"
echo $message_content > test
Erwartete Ausgabe von cat test
:
A
B
C
Tatsächliche Ausgabe von cat test
:
A B C
Was ist los?
Antwort1
Funktioniert das bei Ihnen nicht?:
#!/bin/bash
cat <<EOF > test
A
B
C
EOF
oder Sie können Folgendes tun:
#!/bin/bash
message_content="$(cat <<-EOF
A
B
C
EOF
)"
echo "$message_content" > test
wie der vorherige Kommentar vorgeschlagen hat. zBquote the variable