| SYSTEM(3) | Library Functions Manual | SYSTEM(3) |
system — pass a
command to the shell
Standard C Library (libc, -lc)
#include
<stdlib.h>
int
system(const
char *string);
The
system()
function hands the argument string 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 string is a
NULL pointer,
system()
will return non-zero, if the command interpreter is available, or zero if
none is available. Otherwise, system() returns the
termination status of the shell in the format specified by
waitpid(2).
If a child process cannot be created, or the termination status of
the shell cannot be obtained, system() returns -1
and sets errno to indicate the error. If execution of
the shell fails, system() returns the termination
status for a program that terminates with a call of
exit(127).
The system() function conforms to
ANSI X3.159-1989 (“ANSI C89”)
and IEEE Std 1003.2-1992
(“POSIX.2”).
Never supply the system() function with a
command containing any part of an unsanitized user-supplied string. Shell
meta-characters present will be honored by the
sh(1) command interpreter.
| August 2, 2007 | NetBSD 11.0 |