NAME
explain_system_or_die - execute a shell command and report errors
SYNOPSIS
#include <libexplain/system.h>
void explain_system_or_die(const char *command);
void explain_system_success_or_die(const char *command);
int explain_system_success(const char *command);
DESCRIPTION
These functions may be used to execute commands via the system(3)
function, and report the results.
explain_system_or_die
void explain_system_or_die(const char *command);
The explain_system_or_die function is used to call the system(3) system
call. On failure an explanation will be printed to stderr, obtained
from explain_system(3), and then the process terminates by calling
exit(EXIT_FAILURE).
This function is intended to be used in a fashion similar to the
following example:
int status = explain_system_or_die(command);
command The command, exactly as to be passed to the system(3) system
call.
Returns:
This function only returns on success, see system(3) for more
information. On failure, prints an explanation and exits.
explain_system_success_or_die
void explain_system_success_or_die(const char *command);
The explain_system_success_or_die function is used to call the
system(3) system call. On failure, including any exit status other
than EXIT_SUCCESS, an explanation will be printed to stderr, obtained
from explain_system(3), and then the process terminates by calling
exit(EXIT_FAILURE).
This function is intended to be used in a fashion similar to the
following example:
explain_system_success_or_die(command);
command The command, exactly as to be passed to the system(3) system
call.
Returns:
This function only returns on success. On failure, prints an
explanation and exits.
explain_system_success
int explain_system_success(const char *command);
The explain_system_success function is used to call the system(3)
system call. On failure, including any exit status other than
EXIT_SUCCESS, an explanation will be printed to stderr, obtained from
explain_system(3). However, the priniting of an error message does not
also cause exit(2) to be called.
This function is intended to be used in a fashion similar to the
following example:
int status = explain_system_success(command);
command The command, exactly as to be passed to the system(3) system
call.
Returns:
the value returned by the system(3) system call. In all cases
other than EXIT_SUCCESS, an error message will also have been
printed to stderr.
SEE ALSO
system(3)
execute a shell command
explain_system(3)
explain system(3) errors
exit(2) terminate the calling process
COPYRIGHT
libexplain version 0.19
Copyright (C) 2008 Peter Miller
explain_system_or_die(3)