system
pass a command to the shell
You're viewing an older version of this page (#3488). View the current version.
INTERFACE
#include <stdlib.h> int system ( const char *string )
DESCRIPTION
The system function hands the argument string to the command interpreter. The calling process waits for the shell to finish executing the command, ignoring <span class="Dv">SIGINT</span> and <span class="Dv">SIGQUIT</span>, and blocking <span class="Dv">SIGCHLD</span>.
If string is a <span class="Dv">NULL</span> pointer, system will return non-zero if the command interpreter is available, and zero if it is not.
The system function returns the exit status of the shell as returned by waitpid, or -1 if an error occurred when invoking fork or waitpid. A return value of 127 means the execution of the shell failed.
The following code displays the contents of the current directory using the DIR command.
Example 1
#include <stdlib.h>
int main ()
{
system("dir");
return 0;
}STANDARDS
The system function conforms to ISO/IEC 9899:1990 ("ISO C90") and is expected to be IEEE Std 1003.2 ("POSIX.2") compatible.