integer function system (string) character*(*) string
関数 system は、文字列がコマンドとして入力されたかのように、シェルに入力として文字列を渡します。環境変数 SHELL が見つかった場合は、その値がコマンドインタプリタ (シェル) として使用されます。それ以外の場合は、sh(1) が使用されます。
現在のプロセスは、コマンドが終了するまで待機します。戻り値はシェルの終了ステータスです。この値については、wait(2) を参照してください。
関数 sh(3F) と system は、実行時にシェルに引数文字列を渡します。引数文字列を Fortran の文字値から C の文字列値に変換し、それを C ルーチン system(3C) に渡します。
ルーチン sh(3F) と system は、system が C ルーチン system を呼び出す前に Fortran の入出力バッファーをフラッシュするのに対して、sh はフラッシュしないという点で異なります。バッファーのフラッシュには非常に時間を要することがあるため、Fortran の出力が呼び出しの結果と関係がない場合は、ルーチン system よりも sh の方が推奨されます。
sh(3F) と system(3F) は、どちらも整数の結果を返すことに注意してください。
libfui.a
execve(2)、wait(2)、sh(3F)、system(3C)
string の長さは、1023 文字を超えることができません。