環境変数
述語名/引数 | (getenv *name *value ) |
要約 | *nameで指定した環境変数を文字列として取得します。 |
互換性 | Win Unix |
引数 | *name [in] 環境変数を表す文字列 *array [out] 値を表す文字列 |
成功/失敗 | true
指定された名前の環境変数が定義されていて、その内容が*arrayに関するマッチングに成功した。 false 上記以外 |
解説 | N/A |
例:
[D]>(putenv "ETI=eti")(getenv "ETI" *v)(print *v)
-------------------------D execution ---------------------
"eti"
----------------------------------------------------------
succeeded.
述語名/引数 | (getenv_b *name *array) |
要約 | *nameで指定した環境変数を配列として取得します。 |
互換性 | Win/Unix |
引数 | *name [in] 環境変数を表す文字列 *array [out] 値を表す配列 |
成功/失敗 | true 指定された名前の環境変数が定義されていて、その内容が*arrayに関するマッチングに成功した。 false 上記以外 |
解説 | この述語は、環境変数の値を無変換で取得したい場合のために用意されました。 |
例:
この例では、Windowsの環境変数WINDIRを配列として受け取ります。配列はsjisでエンコードされた文字列なので、それをETIの内部エンコーディングUTF-16ELに変換し更に変換後の配列を文字列に変換しています。
[D]>?-(getenv_b "WINDIR" *),(convertEncoding * *2 "sjis"
"UTF-16LE"),(arrayToStr
ing *2 0 *3)
-------------------------D execution ---------------------
----------------------------------------------------------
succeeded.
(getenv_b "WINDIR" {x043 x03A x05C x057 x069 x06E x064 x06F x077 x073})
execution time: 1 [msec]
-------------------------D execution ---------------------
----------------------------------------------------------
succeeded.
(convertEncoding {x043 x03A x05C x057 x069 x06E x064 x06F x077 x073} {x043 x000
x03A x000 x05C x000 x057 x000 x069 x000 x06E x000 x064 x000 x06F x000 x077 x000
x073 x000 x000 x000} "sjis" "UTF-16LE")
execution time: 1 [msec]
-------------------------D execution ---------------------
----------------------------------------------------------
succeeded.
(arrayToString {x043 x000 x03A x000 x05C x000 x057 x000 x069 x000 x06E x000 x064
x000 x06F x000 x077 x000 x073 x000 x000 x000} 0 "C:\\Windows")
execution time: 2 [msec]
述語名/引数 | (putenv *name_val) |
要約 | 環境変数を設定します。 |
互換性 | Win Unix |
解説 | *name_valには"変数名=値"の形式で指定します。 |
述語名/引数 | (getAllEnv *s) |
要約 | 全ての環境変数とその値を取得します。 |
互換性 | Win Unix |
解説 | N/A |