|Linux & Unix Commands - Search Man Pages
popen, pclose - initiate I/O to/from a process
FILE *popen(command, type)
char *command, *type;
The arguments to popen are pointers to null-terminated strings containing respectively a
shell command line and an I/O mode, either "r" for reading or "w" for writing. It creates
a pipe between the calling process and the command to be executed. The value returned is
a stream pointer that can be used (as appropriate) to write to the standard input of the
command or read from its standard output.
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.
pipe(2), fopen(3), fclose(3), system(3), wait(2)
Popen returns a null pointer if files or processes cannot be created, or the Shell cannot
Pclose returns -1 if stream is not associated with a `popened' command.
Buffered reading before opening an input filter may leave the standard input of that fil-
ter mispositioned. Similar problems with an output filter may be forestalled by careful
buffer flushing, e.g. with fflush, see fclose(3).
All times are GMT -4. The time now is 09:05 PM.