SYSTEM(3)

名称
system - コマンドをシェルに渡す

ライブラリ
libc

書式
#include <stdlib.h> int system(const char *string)

解説
system() 関数は、引数 string をコマンドインタプリタ sh(1) に渡します。 呼び出し元プロセスは、シェルがそのコマンドの実行を 完了するまで待ち、 SIGINT および SIGQUIT を無視し、 SIGCHLD をブロックします。

string が NULL ポインタの場合、 system() はコマンドインタプリタ sh(1) が利用できる場合は 0 以外の値を返し、 利用できない場合は 0 を返します。

fork(2) もしくは waitpid(2) を呼び出したときにエラーが発生した場合、 system() 関数は、 waitpid(2) で返されるシェルの終了状態、 あるいは -1 を返します。 戻り値 127 は、シェルの実行が 失敗したことを意味します。

参照
sh(1), execve(2), wait(2), fork(2), waitpid(2), popen(3)

規格
system() 関数は、 isoC に適合しており、 p1003.2 と互換性があると思われます。