Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ popen(3S) — sys5 — Apollo

Media Vault

Software Library

Restoration Projects

Artifacts Sought



POPEN(3S)       DOMAIN/IX Reference Manual (SYS5)       POPEN(3S)



NAME
     popen, pclose - initiate pipe to or from a process

USAGE
     #include <stdio.h>

     FILE *popen (command, type)
     char *command, *type;

     int pclose (stream)
     FILE *stream;

DESCRIPTION
     The arguments to popen are pointers to null-terminated
     strings.  Command is a Shell command line; type is an I/O
     mode, either r for reading or w for writing.  Popen creates
     a pipe between the calling program and command.  The func-
     tion returns a stream pointer so that the program can write
     to the standard input of the command, if the I/O mode is w,
     by writing to the file stream; and can read from the stan-
     dard output of the command, if the I/O mode is r, by reading
     from the file stream.

     A stream opened by popen should be closed by pclose, which
     waits for the associated process to terminate and returns
     the exit status of the command.

     Because open files are shared, a type r command may be used
     as an input filter and a type w as an output filter.

NOTES
     If the original process and the one opened by popen read or
     write a common file concurrently, neither should use buf-
     fered I/O, because the buffering gets mixed up.  Problems
     with an output filter may be forestalled by careful buffer
     flushing, e.g., with fflush; see fclose(3S).

DIAGNOSTICS
     Popen returns a NULL pointer if files or processes cannot be
     created, or if the Shell cannot be accessed.
     Pclose returns -1 if stream is not associated with a command
     opened by popen.

RELATED INFORMATION
     pipe(2), wait(2), fclose(3S), fopen(3S), system(3S)










Printed 5/10/85                                           POPEN-1



Typewritten Software • bear@typewritten.org • Edmonds, WA 98026