diff options
Diffstat (limited to 'chad/qx.h')
| -rw-r--r-- | chad/qx.h | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/chad/qx.h b/chad/qx.h new file mode 100644 index 0000000..817eaff --- /dev/null +++ b/chad/qx.h @@ -0,0 +1,36 @@ +#ifndef QX_H +#define QX_H + +#ifdef __cplusplus +extern "C" { +#endif + +/* # qx + * + * ## NAME + * qx - execute system commands receive back the output + * + * ## SYNOPSIS + */ +extern char * qx(const char * const cmd); +/* ## DESCRIPTION + * `qx()` is a small wrapper function to replicate Perl's `qx` in C. + * It is intended for developer convenience. + * The command argument is a pointer to a null-terminated + * string containing a shell command line. + * This command is passed to `/bin/sh` using the `-c` flag; interpretation, + * if any, is performed by the shell. + * + * ## RETURN VALUE + * Upon successful return, the captured `stdout` and `stderr` of `cmd` is returned + * in a dynamic string. Calling `free()` is the programmer's responsibility. + * + * If an error is encountered `NULL` is returned. + * The shell returning a non-zero exit value is not considered an error. + */ + +#ifdef __cplusplus +} +#endif + +#endif |
