promenne a slozene zavorky v shellu
Martin Mačok
martin.macok na underground.cz
Pátek Květen 3 18:11:33 CEST 2002
On Fri, May 03, 2002 at 06:00:53PM +0200, Jirka Kosina wrote:
> proc vystup tohoto:
>
> P=0; { export P=1; echo $P; } | { cat -; echo $P; }
> Je
> 1
> 0
>
> a ne
> 1
> 1
>
> Rozumi tomu nekdo?
Zkuste si naimplementovat nejaky jednoduchy shell a pochopite to ;-)
Zjednodusene:
Shell pri parsovani prikazu narazi na znak roury (tedy "|"), pusti
jeden process a v nem to, co je od roury nalevo a pusti druhy process
a v nem to, co je od roury napravo. Pusti to tak, aby standardni
vystup z toho procesu nalevo sel do toho procesu napravo. Jestlize si
ten proces nalevo nejak zmeni svuj environment, neovlivni to
environment toho procesu napravo.
(Ve skutecnosti u nekterych shellu muze byt zaruceno, ze posledni
prikaz v kolone je vykonavan aktualnim procesem shellu, ale to stejne
nijak neresi zminovany "problem")
--
Martin Mačok http://underground.cz/
martin.macok na underground.cz http://Xtrmntr.org/ORBman/
Další informace o konferenci Linux