Mam zmienną, która zawiera ciąg rozdzielany spacjami:
line="1 1.50 string"
Chcę podzielić ten ciąg ze spacją jako separator i zapisać wynik w tablicy, aby:
echo ${arr[0]}
echo ${arr[1]}
echo ${arr[2]}
wyjścia
1
1.50
string
Gdzieś znalazłem rozwiązanie, które nie działa:
arr=$(echo ${line})
Jeśli po tym uruchomię powyższe instrukcje echa, otrzymam:
1 1.50 string
[empty line]
[empty line]
Też próbowałem
IFS=" "
arr=$(echo ${line})
z tym samym wynikiem. Czy ktoś może pomóc?
set -f; arr=($string); set +f
wydaje się być szybszy niżread -r -a <<< $string
.