Nie jesteś zalogowany.
Jeśli nie posiadasz konta, zarejestruj je już teraz! Pozwoli Ci ono w pełni korzystać z naszego serwisu. Spamerom dziękujemy!

Ogłoszenie

Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.

#1  2013-11-17 23:16:01

  basior - Nowy użytkownik

basior
Nowy użytkownik
Zarejestrowany: 2013-11-17

skrypt w Bashu -zwiększanie za pomocą awk zawartości kolumnyz tekstu

mam plik o zawartości:

1 2 3 5 6 7 8 9
10 11 12 13 14 15 16 17 18 19

wynik scryptu:
x=   0
zwiekszamy wartosc o 1 2 3 4 5 6 7 8 9  | 9->10
zwiekszamy wartosc o 10 11 12 13 14 15 16 17 18 19 | 19->29
x=   1 
zwiekszamy wartosc o 1 2 3 4 5 6 7 8 9  | 9->10
zwiekszamy wartosc o 10 11 12 13 14 15 16 17 18 19 | 19->29




a chciałbym uzyskać:
x=   0
zwiekszamy wartosc o 1 2 3 4 5 6 7 8 9  | 9->10
zwiekszamy wartosc o 10 11 12 13 14 15 16 17 18 19 | 19->20
x=   1 
zwiekszamy wartosc o 1 2 3 4 5 6 7 8 9  | 9->11
zwiekszamy wartosc o 10 11 12 13 14 15 16 17 18 19 | 19->21
 


co robię źle?
dlaczego w zmiennej x znajduje się najpierw x z iteracji a następnie zmienna ta zamienia się w tablice i przechowuje ciąg cyfr? jak zwiększyć $x wewnątrz awk'a?
Pozdrawiam

Kod:

#!/bin/bash

for ((x=0;x<2;x++))
do
echo x=$x;
cat pliktekstowy | exec awk  '{print  " zwiekszamy wartosc o " $x  " | " $(NF) "->"$(NF)+$x }'
done

Offline

 

Stopka forum

Powered by PunBB
© Copyright 2002–2005 Rickard Andersson
Możesz wyłączyć AdBlock — tu nie ma reklam ;-)