ďťż
 
 
   [+] Włączenie do pętli w bashu polecenia awk
 
 

Tematy

 
    
 

 

 

 

[+] Włączenie do pętli w bashu polecenia awk





dawoz - 14-07-2009 15:59
Witam serdecznie, mam następujący problem.
Mam plik tekstowy o takiej postaci: nagłówek1; nagłówek2; nagłówek3; itd aż do 45
wartość1;wartość2;wartość3; itd aż do 45
wartość1; wartość2;wartość3 itd aż do 45

itd Jest to plik ze statystykami z sipp generowany automatycznie i teraz chcę napisać skrypt (a właściwie już go piszę), który zrobi mi coś takiego.

Jest pętla w bashu z licznikiem $LICZNIK wewnątrz niej wykonuje się polecenie awk: #
while [ $LICZNIK -ge 1 ] ; do
                awk 'BEGIN { FS = ";" } ; { print $j }' temp
                LICZNIK=$[LICZNIK - 1]
        done Moje pytanie brzmi - czy można jakoś wstrzyknąć wartość licznika do polecenia awk, tak, żeby ten wypisał mi nie wartość licznika tylko pole które jest pod tą wartością.
Czyli: LICZNIK = 3 daje mi: print $3 co z kolei wypisuje nagłówek3 na ekran.



lessmian2 - 14-07-2009 17:45
Spróbuj czegoś takiego: while [ $LICZNIK -ge 1 ] ; do
                awk -v licznik="$LICZNIK" ' BEGIN { FS = ";" } ; { print $licznik }' temp
                LICZNIK=$[LICZNIK - 1]
        done Daj znać czy o to Ci chodziło.



dawoz - 15-07-2009 09:53
idealnie o to chodziło, dziękuję Ci.
  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • minister.pev.pl

  •  

     


     

     
    Copyright 2003. MĂłj serwis