1. ホーム
  2. linux

[解決済み] Linux環境変数名で使用可能な文字

2022-05-02 10:54:17

質問内容

Linuxの環境変数名にはどんな文字が使えますか?マニュアルページやウェブでざっと調べたところ、変数の扱い方についての情報しかなく、どのような名前が許されるのかはわかりませんでした。

ドットを含む環境変数を必要とする Java プログラムがあります。 com.example.fancyproperty . Windowsではその変数を設定することができますが、Linuxではうまく設定できませんでした(SuSEとUbuntuで試しました)。そのような変数名は許されるのでしょうか?

解決方法を教えてください。

から ザ・オープングループ :

これらの文字列は、以下のような形式をとります。 name=valueとします。 を含んではならない。 文字'='です。 値が に準拠したシステム間で移植可能です。 IEEE Std 1003.1-2001に準拠した値でなければならない。 の文字で構成される。 ポータブル文字セット ( ただし、NUL で、以下に示すとおりです。 ).

つまり、名前には = と NUL 以外の任意の文字が含まれる可能性があるわけですが。

シェルとユーティリティ』のユーティリティで使用される環境変数名 IEEE Stdのユーティリティ編 1003.1-2001は、大文字、数字、'_'のみで構成されています。 (アンダースコア) 文字から ポータブル文字セットで定義されている と 数字で始まらない . その他の 文字が許可される場合があります。 を実装しなければならない。 は、そのような名前の存在を許容する。

つまり、名前は有効でも、シェルが文字、数字、アンダースコア以外のものをサポートしていない可能性があるのです。