Ho due programmi: p1 e p2. Corro p1 | p2. So leggere lo stdout da p1 in p2 stdin. Come posso fare lo stesso con stderr.
Grazie, Nicolas
risposte:
3 per risposta № 1Una pipa (|
) nella maggior parte (o tutte) le shell prende lo stdout di un comando e lo passa al secondo comando.
Pertanto, prendere lo stderr dal primo comando può essere fatto solo sulla riga di comando. In bash lo faresti in questo modo:
p1 2>&1 | p2
Questo dice a bash di inoltrare stderr a stdout. Entrambi vengono quindi inviati a p2.
In alternativa, puoi stampare p1 su tutto solo sullo stdout.