Как записать несколько строк в один файл из bash

Как записать несколько строк в один файл из bash

Это глупо, и я пытался найти способ сделать это, и многие сайты советуют делать то же самое, ноничегоработает.

#!/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

Связанный контент