🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: es.comp.os.linux.programacion
Article #1982

Re: Redireccionando stderr

#1982
From: Eduardo Villanueva
Date: Tue, 24 May 2005 07:24
36 lines
2360 bytes
Mat�as Costa wrote:
> David Lago wrote:
> 
> 
>>Nada... esto tampoco funcion�. Parece que popen y el shell debajo
>>utilizan no stderr sino el fd#2 que tiene abierto la aplicaci�n.
>>�Alguien sabe c�mo se redirige el fd#2 que crea el propio programa al
>>ejecutarse, y que heredan los invocados por �l? Por supuesto sin
>>utilizar 2>/dev/null en la llamada, todo dentro del propio programa.
>>
>>Gracias,
>>David.
> 
> 
> int devnull=open("/dev/null");
> int old2=dup(2);
> dup2(devnull, 2);
> 
> Puede que funcione �?

Puede, pero la forma "correcta" es usar freopen.

Del man:

FILE *freopen( const char *camino, const char *modo, FILE *flujo);

La funci�n freopen abre el fichero cuyo nombre es la cadena apuntada por
camino y asocia el flujo apuntado por flujo con  �l.
El flujo  original  (si existe) se cierra.
El argumento modo se emplea igual que en la funci�n fopen. El uso
principal de la funci�n freopen es cambiar el fichero asociado con un
flujo de texto est�ndar (stderr, stdin, o stdout).

Un saludo,

	Edu.
Technical Details
Message-ID: <d6uddl$the$1@peque.uv.es>
Path: arc1-ca.pugleaf.net!g2news1.google.com!news1.google.com!news2.google.com!news.maxwell.syr.edu!newsfeed.icl.net!newsfeed.fjserv.net!feed.news.tiscali.de!newsfeed01.sul.t-online.de!newsfeed00.sul.t-online.de!t-online.de!irazu.switch.ch!switch.ch!newsserver.news.garr.it!news.rediris.es!news.uv.es!not-for-mail
References: <d6crgc$4j53@cesio.mundo-r.com> <d6cu17$4jj4@cesio.mundo-r.com> <d6cujj$4jj7@cesio.mundo-r.com> <npPie.40815$dr.24253@news.ono.com>

Show Full Headers
Complete Article Headers
X-Google-Thread: f86c8,1e9cda547f52621
X-Google-Attributes: gidf86c8,public
X-Google-Language: SPANISH,ASCII
Path: arc1-ca.pugleaf.net!g2news1.google.com!news1.google.com!news2.google.com!news.maxwell.syr.edu!newsfeed.icl.net!newsfeed.fjserv.net!feed.news.tiscali.de!newsfeed01.sul.t-online.de!newsfeed00.sul.t-online.de!t-online.de!irazu.switch.ch!switch.ch!newsserver.news.garr.it!news.rediris.es!news.uv.es!not-for-mail
From: Eduardo Villanueva <eviche@alumni.uv.es>
Newsgroups: es.comp.os.linux.programacion
Subject: Re: Redireccionando stderr
Date: Tue, 24 May 2005 09:24:47 +0200
Organization: Universitat de Valencia
Lines: 36
Distribution: es
Message-ID: <d6uddl$the$1@peque.uv.es>
References: <d6crgc$4j53@cesio.mundo-r.com> <d6cu17$4jj4@cesio.mundo-r.com> <d6cujj$4jj7@cesio.mundo-r.com> <npPie.40815$dr.24253@news.ono.com>
NNTP-Posting-Host: noc4.wks.veloxia.com
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-15
Content-Transfer-Encoding: 8bit
X-Trace: peque.uv.es 1116911861 30254 213.149.224.37 (24 May 2005 05:17:41 GMT)
X-Complaints-To: newsmanager@uv.es
NNTP-Posting-Date: Tue, 24 May 2005 05:17:41 +0000 (UTC)
User-Agent: Debian Thunderbird 1.0.2 (X11/20050331)
X-Accept-Language: en-us, en
In-Reply-To: <npPie.40815$dr.24253@news.ono.com>