On Tue, 16 Oct 2007 17:48:33 +0200 Fabio Marcone <[EMAIL PROTECTED]> wrote:
> Fabio Marcone wrote:
> > Fabio Marcone wrote:
> >>> ./comando 2>&1 | ./script
> > 
> > in questo caso, script può sapere il pid di "./comando" ?
> 
> ho notato che script ha sempre il pid uguale al (pid di comando)+1,
> questo è sempre vero?
[...]

No, in genere non è vero. Un modo che hai per trovare il pid del processo che è 
legato al tuo tramite pipe è qualcosa del tipo:

$ cat | (for i in /proc/*/fd/1; do if [ $(readlink "/proc/$$/fd/0") = 
$(readlink "$i") ]; then echo $i; fi; done;)

vale a dire che cerchi il tuo stdin in /proc/$tuopid/fd/0 e poi cerchi il 
corrispondente stdout /proc/$altropid/fd/1 in modo che corrispondano.

Ciao,
Giuseppe

Rispondere a