std.process
Source:std/process.d
License:
Boost License 1.0. Authors:
Walter Bright, Andrei Alexandrescu
- コマンドシェルで command を実行します
Returns:
command が null の場合、 コマンドシェルが存在すれば非ゼロ、しなければゼロを返します。command が null でない場合、エラー時には -1、コマンドが実行されたときには command の終了コードを返します。
Note:
Unix システムでは、対応する C言語の関数 (Dプログラムからは std.c.system関数として呼び出せます) は、終了コードを waitpid と同じ形式で返します。 これは C では実際の終了コードを得るには WEXITSTATUS マクロを通す必要があることを意味しますが、D の system は自動的に終了コードを取り出して返します。
- pathname で指定されたプログラムを、引数 (argv)
と環境変数 (envp) を与えて実行し、その終了ステータスを返します。
'p' のついたバージョンは、program の探索のために
PATH 環境変数を参照します。
- Runs cmd をシェルで実行し、標準出力を返します。
プロセスが実行できなかったりエラーコードを返したときは、
例外を投げます。
Example:
auto tempFilename = chomp(shell("mcookie")); auto f = enforce(fopen(tempFilename), "w"); scope(exit) { fclose(f) == 0 || assert(false); system("rm " ~ tempFilename); } ... f を使う ...
- 環境変数 name の値を文字列で取得します。 内部で std.c.stdlib.getenv を呼び出します。
- 環境変数を連想配列風のインターフェイスで扱えます。
Examples:
// 環境変数を返すか、存在しなければ例外を投げる auto path = environment["PATH"]; // 環境変数の追加/置き換え environment["foo"] = "bar"; // 環境変数の消去 environment.remove("foo"); // 環境変数を返すか、存在しなければnull auto foo = environment.get("foo"); // 環境変数を返すか、存在しなければデフォルト値 auto foo = environment.get("foo", "default foo value"); // 全ての環境変数を含む // 連想配列 string[string] を求める auto aa = environment.toAA();