bash 的多行变量传递问题

2018-01-10 04:35:24 +08:00
 param
#!/bin/bash            #1
read -d '' sql << EOF  #2
select c1, c2 from foo
where c1='something'
EOF
echo "$sql"            #6
export sql             #7
bash -c 'echo $sql'    #8

为什么第 6 行能正确输出多行变量,第 8 行就合并成单行了呢?

2244 次点击
所在节点   Bash
2 条回复
ytterbium
2018-01-10 04:44:57 +08:00
双引号
param
2018-01-10 05:01:27 +08:00
@ytterbium 咦!神奇。居然是这种错误。。知道问题了。。谢谢

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/421552

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX