Wartość wiersza do 2 zmiennych

0

W ramach wyjaśnienia chodzi o powłokę sh.
Mam plik w postaci liczba spacja druga liczba i tak w każdym wierszu, chciałbym zrobić coś w stylu:

for x,y in `cat plik.txt`
do
operacje na zmiennych
done

Ogólnie chodzi by wydobyć te 2 zmienne, coś w stylu współrzędnych punktu i by móc na nich operować.
Da jakoś rady coś takiego?

0

Trochę jeszcze pomyślałem i wyszło coś takiego:

for n in `seq 1 1 5`
do
	w="`sed -n $n''p temperature.txt`"
	x=$((`echo $w | awk '{printf "%d", $1}'`))
	y=$((`echo $w | awk '{printf "%d", $2}'`))
	echo $y   $x
done 

Da się to jakoś skrócić, upiększyć?

0
while read a b; do
...
done < plik.txt

W "a" masz pierwszy token, w "b" resztę linii.

BTW skoro sh, to chyba $((...)) jest niepoprawnym zapisem. Wydawało mi się, że to bash pozwala na coś takiego.

0

Dziękuję, działa wyśmienicie :)
Co do $(( )) to nie wiem jak to jest, więc nie będę się spierał. Docelowo skrypty mają działać na busybox, testowałem i działa, aczkolwiek możliwe że na oryginalnym sh będzie inaczej.

1 użytkowników online, w tym zalogowanych: 0, gości: 1