$ export VAR=xx
$ echo -e "$(cat <<'EOF'\n$VAR\nEOF\n)"结果是:
bash: warning: here-document at line 117 delimited by end-of-file (wanted `EOFn$VARnEOFn')
bash: warning: here-document at line 117 delimited by end-of-file (wanted `EOFn$VARnEOFn')
bash: warning: here-document at line 1 delimited by end-of-file (wanted `EOFn$VARnEOFn')我做错了什么?为什么是$VARnEOFn?我的“\n”插值在哪里?
发布于 2022-08-05 11:39:18
我不知道为什么要以如此复杂的方式执行echo,但从语法的角度来看,这是可行的:
echo "$(cat <<EOF
$VAR
EOF
)"请注意,这里的分隔符必须位于自己的行上,如果要展开变量,则不希望使用单引号。
https://stackoverflow.com/questions/73248836
复制相似问题