実行対象をシステムのシェル経由で実行します。
 
	  
		制約事項: この関数は、ネイティブ COBOL でのみサポートされます。
 
 
	  
 
	 構文:
 
		 
		#include <sys/wait.h>
int SYSTEM (const unsigned char *cmd);
 
	  
 
	 パラメーター:
 
		 
		 
		
 
			  
			  
			  
				 
				  | cmd | 
 
				  実行するシステム コマンド ライン。末尾が NULL の文字列です。 | 
 
				
 
			 
 
		  
 
 
		 
 
	  
 
	 
 
	 相当する COBOL 構文:
 
		 
		call "CBL_EXEC_RUN_UNIT" using ...
 
	  
 
	 例:
 
		 
		次のコードはファイルをコピーして標準出力と標準エラーをエラー ファイルにリダイレクトし、コマンドの戻りコードを表示します (実行後にエラー ファイルを開くと、コマンドで生成された出力が確認できます)。
 
		int res;
res = SYSTEM("cp f1 f2 > errfile 2>&1");
if (WIFEXITED(res))
    cobprintf("Exit status: %d\n", WEXITSTATUS(res));
 
	  
 
   
 
説明:
C の system() ライブラリ ルーチンと同様、指定されたコマンド ラインをシェルに渡して実行します。
COBOL 環境はシェルや SYSTEM() で実行されるコマンドなど、他のプロセスによる出力を関知しません。そのため、SYSTEM() では画面の更新を伴う処理を実行しないようにするか、呼び出し後に画面を更新する必要があります。
このルーチンの戻り値は、C の system() ライブラリ ルーチンと同じ形式です。C ライブラリのインクルード ファイル sys/wait.h では、実行されたコマンドの戻り値を取得し、その値を操作するマクロが定義されています。詳細については、使用しているシステムのドキュメントを参照してください。