Stránka 1 z 1

Nejasnosti

Napsal: 8. 9. 2008 20:39
od Medved
Ucim se na zkousku a budu sem hazet nejasnosti, snad prip. odpovedi za ktere dekuji pomuzou vice lidem, nez jen me:

Tohle neni prekvapive:
u-pl4:~$ a=1; { a=2; }; echo $a
2

Tohle nechapu, pritom jsem vse presmeroval jen do dalsi {}, kam jsem strcil libovolny zbytecny prikaz (neco tam byt musi):
u-pl4:~$ a=1; { a=2; }|{ echo "" > /dev/null; } ; echo $a
1

Re: Nejasnosti

Napsal: 8. 9. 2008 20:43
od Him

Kód: Vybrat vše

a=1; { a=2; }|{ echo "" > /dev/null; } ; echo $a
{ obsah } se sice zpracuje v shellu ve kterem pracujes... jenze pouzivas pipu a prikazy v pipe jsou spustene v subshellu a shell nezajima, co se deje s promennyma v subshellu

Re: Nejasnosti

Napsal: 8. 9. 2008 20:49
od Medved
Takze cely ten stream prikazu se provede v subshellu jenom proto, ze je tam pipe? Nebo jeste kazda z tech casti ve zvlastnim?

Re: Nejasnosti

Napsal: 8. 9. 2008 20:52
od Him

Kód: Vybrat vše

a=1;  # toto se provede v shellu

{ a=2; }|{ echo "" > /dev/null; } ;  # prikaz { a=2; } se provede v subshellu, stejne tak i prikaz: { echo "" > /dev/null; }

echo $a   # toto se provede v shellu

Re: Nejasnosti

Napsal: 8. 9. 2008 20:57
od Medved
Dobry uz je mi to jasny, je to dokonale nesmyslny, protoze {a=2} se provede jeste v jinem subshelu nez {echo...}, abych nahodou nemohl predavat vubec nic :D. Diky.

Re: Nejasnosti

Napsal: 8. 9. 2008 21:01
od Him
neni zac ;-)

... aby to bylo jeste vtipnejsi tak echo nezpracovava standardni vstup

Kód: Vybrat vše

echo "test" | echo  # vyhodi error
... ale to je jen perlicka :-)

Re: Nejasnosti

Napsal: 8. 9. 2008 21:19
od Medved
Jeste takovy technicky dotaz
1) Musim se ucit vi? Muze se stat, ze tam bude priklad typu: "Napiste skript pro vi, ktery...?"
2) dtto pro ed? (umim sed)

Re: Nejasnosti

Napsal: 8. 9. 2008 22:01
od Him
1) vi bych rekl, ze neni potreba umet - alespon nevim, ze by to byl nejaky zkouskovy priklad
2) ed se cas od casu hodi, napriklad ja jsem mel CVS, kde se pouziva "diff -e" a nasype se to EDu, ale myslim, ze se to da zvladnout bez nej

Re: Nejasnosti

Napsal: 9. 9. 2008 09:49
od hippies
v edu se dobre maze posledni radek, coz se hodi pri simulaci zasobniku v souboru. Protoze ed neumim, udelal jsem to tak, ze jsem pomoci wc spocital radky, pak to zmensil o jedna a pomoci head vypsal a pres houpacku zapsal.

Forst na to jen vyvalil oci, rekl opatrne, ze by se to dalo i jednodusejc, ale na jednicku to stacilo;)

neni dulezite umet vsechno, ale umet si poradit;)

Re: Nejasnosti

Napsal: 9. 9. 2008 09:52
od Him
hippies: Me se na edu libi to, ze zapisuje in place, neni treba otravnych docasnych souboru..

Re: Nejasnosti

Napsal: 9. 9. 2008 09:59
od hippies
jj, jenze uc se ho, kdyz to umis obejit;) .. na prednasce ani ze slidu jsem to uplne presne nepochopil (pochopil jsem to asi mesic po zkousce, kdyz jsem videl nejaky priklad), jenze to uz se mi to zas v te hlavne nejak nechytlo .. takze proste '| sed "s/' je jedna z mejch nejcastejsich frazi:) (aspon clovek muze porovnat vstup a vystup, tj. backup pred destroy;) )

Re: Nejasnosti

Napsal: 9. 9. 2008 14:31
od Him
2hippies: na prednaskach nebylo vice prikazu, treba to kombinovani diffu s EDem mi prijde dost dobry.. ale jinak jsou prednasky dobry, takze zadny vytky

Re: Nejasnosti

Napsal: 9. 9. 2008 19:40
od Medved
Ja bych se ED docela rad naucil, ale nikde nedokazu najit zadny rozumny tutorial. Rozumny = polopaticky popis pro windowsaka, kterej unix nema v oblibe, ale musi se ho naucit na zkousku (tj. ne manualova stranka)

Re: Nejasnosti

Napsal: 9. 9. 2008 19:51
od Him
http://www.ibm.com/developerworks/aix/l ... tedit.html - tady je troska o EDu, me se clanek libil..