Установите IFS
. Shell использует переменную IFS
, чтобы определить, что представляют собой разделители полей. По умолчанию IFS
устанавливается на символ пробела. Измените его на новую строку.
#!/bin/bash
names="Netgear
Hon Hai Precision Ind. Co.
Apple"
# Save current IFS
SAVEIFS=$IFS
# Change IFS to new line.
IFS=$'\n'
names=($names)
# Restore IFS
IFS=$SAVEIFS
for (( i=0; i<${#names[@]}; i++ ))
do
echo "$i: ${names[$i]}"
done
Выход
0: Netgear
1: Hon Hai Precision Ind. Co.
2: Apple