On Thu, 22 Sep 2005 18:29:02 +0300
Mihai Voica [EMAIL PROTECTED] wrote:
As vrea sa gasesc o constructie mai eleganta pt urmatoarea chestie
for line in `grep mumu /some/file`; do
field1=`echo $line` |awk {'print $1'}
field2=`echo $line` |awk {'print $2'}
field3=`echo
On Thu, 22 Sep 2005 18:42:31 +0300
Mihai Voica [EMAIL PROTECTED] wrote:
for line in `grep mumu /some/file`; do
ineficient, bash o sa-ti evalueze substituie `grep mumu /some/file`
de la inceput in for. iar daca rezultatul e mare...
field1=`echo $line` |awk {'print $1'}
field2=`echo
On Thu, 22 Sep 2005 18:42:31 +0300
Mihai Voica [EMAIL PROTECTED] wrote:
Revin cu o completare:
Intrucat sepratorul intre fields nu e neaparat sa fie spatiu
problema mea impune neaparat o rezolvare cu awk sau cut.
mi-a scapat partea asta. poti modifica sepratorul si pentru bash/read,
vezi
awk {'print $1 $2 $3 $4 .. $x'}
si sa bag $1 $2 $3 ... $x in niste variabile bash automat
awk '{print $1 $2 $3}' | read unu doi trei
altfel nu prea poti ce ai zis mai sus.
awk e awk, bash e bash, chiar daca se ajuta unu pe altul in one-linere.
Petre.
for line in `grep mumu /some/file`; do
eval `echo $line|awk
'{printf(field1=%s;field2=%s;field3=%s;field4=%s,$1,$2,$3,$4)}'`
done
cel mai elegant e
awk '/mumu/{ insert code here }' /some/file
si in $1-4 ai ce-ti trebuie,si faci prelucrarea in awk
On 9/22/05, Mihai Voica [EMAIL PROTECTED]
[EMAIL PROTECTED] cata]$ echo 1 2 3
1 2 3
[EMAIL PROTECTED] cata]$ echo 1 2 3 | awk '{print $1,$2,$3}'
1 2 3
[EMAIL PROTECTED] cata]$ echo 1 2 3 | awk '{print $1,$2,$3}' | read unu doi trei
[EMAIL PROTECTED] cata]$ echo 1 2 3 | awk '{print $1,$2,$3}' | read unu doi
trei ; echo $unu $doi $trei
On Thu, 22 Sep 2005 22:04:52 +0300
Catalin Muresan [EMAIL PROTECTED] wrote:
[EMAIL PROTECTED] cata]$ echo 1 2 3 | awk '{print $1,$2,$3}' | read unu doi
trei ; echo $unu $doi $trei
[EMAIL PROTECTED] cata]$
`|' creeaza alt bash, asa ca nu merge cu `|'.
si cine te opreste sa prelucrezi mai