[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: KDE e gmplayer



Vincenzo Ciancia ha scritto:
Se lo capite meglio di me potreste spiegarlo in italiano

Io in proposito mi sono immaginato una plausibile implementazione,
quindi ne ho tratto uno schemino mentale semplice da capire.
Vediamo se mi spiego (e correggetemi se sbaglio!):

Quando un processo viene lanciato, ha gia' 3 descrittori aperti:
standard input, output e error, che corrispondono ai numeri 0, 1 e 2.

Stato iniziale
-------------------------------------
Numero               File
Descrittore          Corrispondente

0                    Standard Input
1                    Standard Output
2                    Standard Error
-------------------------------------

L'effetto di una redirezione

# comando > nomefile 2>&1

si traduce, in ordine, nel sovrascrivere Standard Output con nomefile

-------------------------------------
Numero               File
Descrittore          Corrispondente

0                    Standard Input
1                    nomefile
2                    Standard Error
-------------------------------------

e successivamente nel copiare il file corrispondente al descrittore 1
nel file corrispondente al descrittore 2, ossia passo per passo:

-------------------------------------
Numero               File
Descrittore          Corrispondente

0                    Standard Input
1                    nomefile
2                    nomefile
-------------------------------------

Viceversa, il comando

# comando 2>&1 > nomefile

_prima_ copia il file corrispondente al descrittore 1 nel descrittore 2,

-------------------------------------
Numero               File
Descrittore          Corrispondente

0                    Standard Input
1                    Standard Output
2                    Standard Output
-------------------------------------

_poi_ imposta nomefile come file corrispondente al descrittore 1

-------------------------------------
Numero               File
Descrittore          Corrispondente

0                    Standard Input
1                    nomefile
2                    Standard Output
-------------------------------------

Et voila'.
I torni contano?


Cristian



Reply to: