Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ unsetenv(3) — NEWS-os 4.1C

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

csh(1)

sh(1)

execve(2)

environ(7)

GETENV(3)  —  NEWS-OS Programmer’s Manual

名称

getenv, setenv, unsetenv  −  環境変数を操作する

形式

char ∗getenv(name)
char ∗name;

setenv(name, value, overwrite)
char ∗name, ∗value;
int overwrite;

void unsetenv(name)
char ∗name;

解説

getenv は、 環境リスト (environ(7) を 参照)を 検索して、 name=value の形式の文字列を 捜し、 そのような文字列があった場合には、 value 文字列へのポインタを返します。 そうでなければ、 getenv は値 0 (NULL) を返します。

setenv は、 getenv と同様、環境リストを検索します。 文字列 name がなければ、 name=value の形式の文字列を 環境リスト に追加します。 そのような文字列があり、 overwrite がゼロ以外の値の場合は、 name の値は、 value の値を取ります。 setenv は、 成功時には、0 を、 また、その環境用に十分なスペースが割り当てられず 失敗したときには -1 を返します。

unsetenv は、環境リストから 文字列 name に示された変数を削除します。 現在使用している環境を完全に削除するライブラリは ありません。 現在使用している環境を全て削除するには、 以下のようにするとよいでしょう。

        static char     ∗envinit[1];
        extern char     ∗∗environ;
        environ = envinit;

これらのルーチンでは、 文字列 name の後の等号符 (“=”) や、 value の前の等号符も (特に必要ではありませんが) 使用できます。

関連事項

csh(1), sh(1), execve(2), environ(7)

NEWS-OSRelease 4.1C

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026