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