🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

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

Re: Capturar la salida de un programa

#8367
From: Lepton
Date: Wed, 13 Nov 2002 08:23
29 lines
1995 bytes
On Tue, 12 Nov 2002, Francisco wrote:

# 	Mi intenci�n es hacer un peque�o front-end para controlar el rpm. Por
# tanto, tengo que capturar la salida del rpm para obtener una lista de
# los paquetes instalados, informaci�n sobre estos paquets, ... Y en una
# fase posterior, poder instalar y desinstalar paquetes.

Acabo de ver que existen librerias para el RPM (librpm.a, etc.),
aunque deberias mirar si las tienes.. y sobre todo: como se usan :)

Quiza esto te proporcione una solucion mucho mas robusta que ejecutar
un programa externo e interpretar la salida (ultimamente muy peligroso,
con la 'plaga' de 'locales' que anda suelta por ahi :)

En cualquier caso, popen() va bien para lo que quieres. Tambien lo
que dijo Angel, con dup2().

Algo asi:

FILE *fp = fopen("salida", "w");

if(fork() == 0) {
 dup2(fileno(fp), 1);
 execl(...);
}

(Lo he escrito asi a ojo, pero esa seria la idea)
Lepton.
Technical Details
Message-ID: <Pine.LNX.4.44.0211130919240.624-100000@lorien.local>
Path: arc1-ca.pugleaf.net!archiver1.google.com!news1.google.com!newsfeed.stanford.edu!logbridge.uoregon.edu!fu-berlin.de!uni-berlin.de!a2780.pppool.DE!not-for-mail
References: <3DD03990.1090606@ono.com> <aqqmu8$a0v56$1@ID-148170.news.dfncis.de> <mf57a-485.ln1@mithrandir.intranet> <aqrgst$l9c$1@news.unizar.es> <01u7a-vlm.ln1@mithrandir.intranet> <3DD15DF6.8020500@ono.com>

Show Full Headers
Complete Article Headers
X-Google-Language: SPANISH,ASCII
X-Google-Thread: f86c8,c70e8198e9aa783d
X-Google-Attributes: gidf86c8,public
X-Google-ArrivalTime: 2002-11-13 00:37:12 PST
Path: arc1-ca.pugleaf.net!archiver1.google.com!news1.google.com!newsfeed.stanford.edu!logbridge.uoregon.edu!fu-berlin.de!uni-berlin.de!a2780.pppool.DE!not-for-mail
From: Lepton <reinob@jazzfree.com>
Newsgroups: es.comp.os.linux.programacion
Subject: Re: Capturar la salida de un programa
Date: Wed, 13 Nov 2002 09:23:33 +0100
Lines: 30
Message-ID: <Pine.LNX.4.44.0211130919240.624-100000@lorien.local>
References: <3DD03990.1090606@ono.com> <aqqmu8$a0v56$1@ID-148170.news.dfncis.de>
 <mf57a-485.ln1@mithrandir.intranet> <aqrgst$l9c$1@news.unizar.es>
 <01u7a-vlm.ln1@mithrandir.intranet> <3DD15DF6.8020500@ono.com>
NNTP-Posting-Host: a2780.pppool.de (213.6.39.128)
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=iso-8859-1
Content-Transfer-Encoding: 8BIT
X-Trace: fu-berlin.de 1037176631 13913672 213.6.39.128 (16 [130846])
X-Orig-Path: localhost!reinob
In-Reply-To: <3DD15DF6.8020500@ono.com>