Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

system(3) [osf1 man page]

system(3)						     Library Functions Manual							 system(3)

NAME
system - Executes a shell command LIBRARY
Standard C Library (libc.so, libc.a) SYNOPSIS
#include <stdlib.h> int system( const char *string); STANDARDS
Interfaces documented on this reference page conform to industry standards as follows: system(): XPG4, XPG4-UNIX Refer to the standards(5) reference page for more information about industry standards and associated tags. PARAMETERS
Specifies a valid sh shell command. If string is NULL (0), the system() function tests the accessibility of the sh command interpreter. If string is not NULL, the system() function passes the parameter to the sh command, which interprets string as a command and exe- cutes it. DESCRIPTION
The system() function passes the string parameter to the sh command, which interprets string as a command and executes it. The system() function invokes the fork() function to create a child process that in turn uses the exec function to run sh, which interprets the shell command contained in the string parameter. The current process waits until the shell has completed before returning. RETURN VALUES
If the string parameter is NULL, the system() function returns 0 if it is unable to access the command interpreter or a non-zero value if sh is accessible. If the string parameter is not NULL, upon successful completion by sh, the system() function returns the exit status of the shell process in the form that wait(2) returns. Otherwise, the system() function returns a value of -1 and sets errno to indicate the error. Exit status 127 indicates that the shell could not be executed. Note that the exit status should only be interpreted using the macros described in wait(2) and defined in the sys/wait.h header file. ERRORS
The system() function sets errno to the specified values for the following conditions: The status of the child process created by system() is no longer available. In addition, the system() function may set errno values as described by fork(). RELATED INFORMATION
Functions: exec(2), exit(2), fork(2), wait(2) Commands: sh(1) Standards: standards(5) delim off system(3)

Check Out this Related Man Page

popen(3)						     Library Functions Manual							  popen(3)

NAME
popen - Initiates a pipe to a process LIBRARY
Standard C Library (libc.so, libc.a) SYNOPSIS
#include <stdio.h> FILE *popen ( const char *command, const char *type ); STANDARDS
Interfaces documented on this reference page conform to industry standards as follows: popen(): XPG4, XPG4-UNIX Refer to the standards(5) reference page for more information about industry standards and associated tags. PARAMETERS
Points to a null-terminated string containing a shell command line. Points to a null-terminated string containing an I/O mode. DESCRIPTION
The popen() function creates a pipe between the calling program and a shell command to be executed. It returns a pointer to a FILE struc- ture for the stream. If the type parameter is the value r, the calling program can read from the standard output of the command by reading from the returned file stream. If the type parameter is the value w, the calling program can write to the standard input of the command by writing to the returned file stream. Because open files are shared, a type r command can be used as an input filter and a type w command as an output filter. NOTES
Programs using the popen() function to invoke an output filter should beware of possible deadlock caused by output data remaining in the program's buffer. This can be avoided by either using the setbuf() function to ensure that the output stream is unbuffered, or by using the fflush() function to ensure that all buffered data is flushed before calling the pclose() function. If the original processes and the process started with the popen() function concurrently read or write a common file, neither should use buffered I/O. If they do, the results are unpredictable. RETURN VALUES
Upon successful completion, the popen() function returns a pointer to the FILE structure for the opened stream. In case of error because files or processes could not be created, the popen() function returns a null pointer. RELATED INFORMATION
Functions: exec(2), fork(2), fclose(3), fopen(3), pclose(3), pipe(2), setbuf(3) Standards: standards(5) delim off popen(3)
Man Page