在shell脚本文件中,是否可以在多行中定义一个数组?我尝试了像这样的写法:
foo.sh
#!/usr/bin/env bash
messages=(
"Hello"
"World"
)
echo $messages
然而,输出结果只有第一行“Hello”,没有第二行“Word”。
$ sh foo.sh
Hello
更让我困惑的是,如果我将foo.sh的内容复制并直接粘贴到终端中,事情会按照我预期的方式进行:$ messages=(
"Hello"
"World"
)
echo $messages
Hello World
有人知道为什么吗?
sh
。 - Mad Physicist./foo.sh
直接运行它,这样应该会产生相同的结果。 - Mad Physicistchmod + x foo.sh
,然后执行./foo.sh
,结果是一样的:只有“Hello”,没有“World”。您还有其他想法吗? - Yuchen