🖥
シェル — スペースが含まれる配列要素をループする
注意
コメント欄参照
検証
ループの中で、添え字を使って配列要素にアクセスする。
example.sh
arr=(
"Space delimited text A"
"Space delimited text B"
"Space delimited text C"
)
for ((i = 0; i < ${#arr[@]}; i++))
do
echo "${arr[$i]}"
done
結果
$ bash example.sh
Space delimited text A
Space delimited text B
Space delimited text C
問題
以下の書き方では、スペースの区切りで別要素として扱われてしまっていた。
example.sh
arr=(
"Space delimited text A"
"Space delimited text B"
"Space delimited text C"
)
for item in ${arr[@]}; do
echo "$item"
done
$ bash example.sh
Space
delimited
text
A
Space
delimited
text
B
Space
delimited
text
C
環境
- bash 4.4.0
チャットメンバー募集
何か質問、悩み事、相談などあればLINEオープンチャットもご利用ください。
公開日時
2017-11-24
Discussion