Scroll to navigation

explain_system_or_die(3) Library Functions Manual explain_system_or_die(3)

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);
The command, exactly as to be passed to the system(3) system call.
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);
The command, exactly as to be passed to the system(3) system call.
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);
The command, exactly as to be passed to the system(3) system call.
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 1.4
Copyright (C) 2008 Peter Miller