SYSTEM(3F)

名前
system - オペレーティングシステム・コマンドの実行

形式
integer function system (string)
character*(*) string

機能説明
関数 system は、 string をコマンドとして入力されたかのように、 入力としてシェルに渡します。 環境変数 SHELL が設定されている場合、 その値がコマンドインタプリタ (シェル) として使用されます。 それ以外の場合は、 sh (1) が使用されます。

現在のプロセスは、コマンドが終了するまで待機します。 戻り値は、シェルの終了ステータスになります。 この値については、 wait(2) を参照してください。

cc と f77 はその歴史から、異なる想定の元に開発されています。

cc が system を呼び出すと、常に Bourne シェルが呼び出されます。

f77 が system を呼び出すと、呼び出されるシェルは、 環境変数 SHELL の値によって決まります。

関数 system は、オープンされているファイルをすべてフラッシュします。

出力ファイルの場合、バッファの内容は実際のファイルにフラッシュされます。

入力ファイルの場合、ポインタの位置は予測できません。

system 関数は MT-safe(マルチスレッド環境で使用しても安全) ではありませんので、 マルチスレッド環境での使用は危険です。

ファイル
libfui.a

関連項目
execve(2)、 wait(2)、 system(3c)、 sh(3F)

使用上の留意点
string は、1023 文字を超えないようにしてください。