On Sat, 2003-11-29 at 21:18, Linux User wrote:
> Hi Cristi,
> 
> Mai... stai si nu te aprinde asa... ca eu nu am nimic impotriva variantei 
> tale.... si nici cu tine... si in nici un caz nu te-am jignit....Doar am 
> intrebat cum scot $y si $z din $x care este de forma pe are am precizat-o, 
> asa cum ai cerut..... La mine insa tocmai $y si $z sunt variabilele care 
> trebuiesc determinate....Nu vad de ce te-ai suparat, daca eu nu am inteles 
> varianta ta.... 
Eu te-am jignit?
> IPOTEZA: se da variabila x obtinuta dintr-un TMPFILE, asa cum este descris 
> mai sus.... Se cere sa se afle $y si $z din $x 
Mai sus? Unde?
> NOTA: nu te lega in nici un fel de continutul lui x (stii doar ca el contine 
> un tab si atit)
echo -e 'a\tb' e echivalent cu cat file, daca file contine:

a       b

> Solutia1 (bazata pe awk):
> 
> x=$(sed -n $k\p $TMPFILE);
> aici sa zicem ca rezulta: y="ahjdhjafhjksdafhj        kj;yktg;klyt;jkly"
                               spatii, nu tab---^^
> y=`echo $x | awk '{print $1}'`
> z=`echo $x | awk '{print $1}'`
> echo $y va printa hjdhjafhjksdafhj
> echo $z va printa kj;yktg;klyt;jkly
> 
> Si pentru ca m-am "enervat" am gasit si solutia cu cut cit si unde era 
> greseala in scriptul meu (nu-i pasa daca e tab sau spacebar lui cut)
Ba, tocmai. Lui cut ii pasa, lui awk nu-i pasa. (De fapt, depinde de
$IFS)
> Solutia 2 (bazata pe cut):
> x=$(sed -n $k\p $TMPFILE);
> y=`echo $x| cut -f 1 -d ' '`
> z=`echo $x| cut -f 2 -d ' '`
> 
> echo $y;
> echo $z;

[EMAIL PROTECTED]:~$ echo 'a b' | cut -f1 -d' '
a
[EMAIL PROTECTED]:~$ echo 'a b' | cut -f1
a b
[EMAIL PROTECTED]:~$ echo -e 'a\tb' | cut -f1
a
[EMAIL PROTECTED]:~$ echo -e 'a\tb' | cut -f1 -d' '
a       b

Problema e ca tu nu pui ghilimele la echo. man bash, uite-te dupa word
splitting. Incearca echo "$x" si o sa vezi ca va merge si cu cut, fara
-d' '. (In fine, iarasi depinde de $IFS)
> Thread closed....
Not just yet.
-- 
Birzan George                   Violence is the last refuge of
  Cristian                      the incompetent -- Salvor Hardin

--- 
Detalii despre listele noastre de mail: http://www.lug.ro/


Raspunde prin e-mail lui