Amiga Unix — 68040 · 68060

Manual pages › Standard input and output (3S)

system(3S)

issue a shell command

From the original Amiga UNIX 2.1 manual. Some things it mentions may not be in this release.

Also by this name: system(4), File formats and configuration files

NAME

system - issue a shell command

SYNOPSIS

#include <stdlib.h>

int system (const char *string);

DESCRIPTION

system causes the string to be given to the shell [see sh(1)] as input, as if the string had been typed as a command at a terminal. The current process waits until the shell has completed, then returns the exit status of the shell in the format specified by waitpid.

If string is a NULL pointer, system checks if /sbin/sh exists and is executable. If /sbin/sh is available, system returns non-zero; otherwise it returns zero.

system fails if one or more of the following are true:

EAGAIN The system-imposed limit on the total number of processes under execution by a single user would be exceeded.

EINTR system was interupted by a signal.

ENOMEM The new process requires more memory than is allowed by the system-imposed maximum MAXMEM.

SEE ALSO

exec(2), waitpid(3C).
sh(1) in the User's Reference Manual.

DIAGNOSTICS

system forks to create a child process that in turn execs /sbin/sh in order to execute string. If the fork or exec fails, system returns a value of -1 and sets errno.