system
—execute command stringSynopsis
#include <stdlib.h> int system(char *s); int _system_r(void *reent, char *s);
Description
Use system
to pass a command string *s
to /bin/sh
on
your system, and wait for it to finish executing.
Use “system(NULL)
” to test whether your system has /bin/sh
available.
The alternate function _system_r
is a reentrant version. The
extra argument reent is a pointer to a reentrancy structure.
Returns
system(NULL)
returns a non-zero value if /bin/sh
is available, and
0
if it is not.
With a command argument, the result of system
is the exit status
returned by /bin/sh
.
Portability
ANSI C requires system
, but leaves the nature and effects of a
command processor undefined. ANSI C does, however, specify that
system(NULL)
return zero or nonzero to report on the existence of
a command processor.
POSIX.2 requires system
, and requires that it invoke a sh
.
Where sh
is found is left unspecified.
Supporting OS subroutines required: _exit
, _execve
, _fork_r
,
_wait_r
.