heredoc 中的新行在文件中消失

heredoc 中的新行在文件中消失

我正在将 heredoc 回显到文件中,但换行符丢失了

运行此脚本

#!/bin/bash 

NAME="$1"

mkdir -p $NAME

FILE=$(cat <<SETVAR
name = "$NAME"
type = "test"
SETVAR
)

echo $FILE > $NAME/$NAME.txt

使用参数:foo,结果文件位于 foo/foo.txt,包含

name = "foo" type = "test"

有什么想法吗?谢谢

答案1

对于包含空格的变量始终使用双引号:

echo "$FILE" > ...

相关内容