SYSTEM(3) Library Functions Manual SYSTEM(3)

systempass a command to the shell

Standard C Library (libc, -lc)

#include <stdlib.h>

int
system(const char *command);

The () function hands the argument command to the command interpreter sh(1). The calling process waits for the shell to finish executing the command, ignoring SIGINT and SIGQUIT, and blocking SIGCHLD.

If command is a NULL pointer, () will return non-zero if the command interpreter sh(1) is available, and zero if it is not.

The system() function returns the exit status of the shell as returned by waitpid(2), or -1 if an error occurred when invoking fork(2) or waitpid(2). A return value of 127 means the execution of the shell failed.

sh(1), execve(2), fork(2), waitpid(2), popen(3)

The system() function conforms to ISO/IEC 9899:1990 (“ISO C90”) and is expected to be IEEE Std 1003.2 (“POSIX.2”) compatible.

June 4, 1993 macOS 15.2