How to Define Array in Multiple Lines in Shell
Is It Possible to Define an Array in Multiple Lines in a Shell Script File? I Tried Something Like This: Foo. Sh #! /Usr/Bin/Env Bash Messages=( "Hello"...
Is it possible to define an array in multiple lines in a shell script file? I tried something like this:
foo.sh
#!/usr/bin/env bash
messages=(
"Hello"
"World"
)
echo $messages
However, the output only has the first line "Hello", but not the second line "Word".
$ sh foo.sh
Hello
What is more confusing to me is that if I copy the content of foo.sh and paste it directly into the terminal, things work as I expected:
$ messages=(
"Hello"
"World"
)
echo $messages
Hello World
Anybody know why?
1 Answer
If you want to print the whole array, you need:
echo ${messages[@]}