developer's diary

最近はc#のエントリが多いです

c# ( dotnetcore ) で 環境変数を読み込む

環境変数の読み込みに対して、特にNuGetでのパッケージのインストールは必要ありませんでした。

環境変数を読み込むプログラム

using System;
using System.Collections;

namespace example_get_environment
{
    class Program
    {
        static void Main(string[] args)
        {

            //このセッションにログインする際に使ったアカウントのログイン名 (BSDの慣習)。
            Console.WriteLine("USER:" + Environment.GetEnvironmentVariable("USER"));

            //このセッションにログインする際に使ったアカウントのログイン名 (System Vの慣習)。
            Console.WriteLine("LOGNAME:" + Environment.GetEnvironmentVariable("LOGNAME"));

            //このセッションを実行しているユーザーのホームデイレクトリ。
            Console.WriteLine("HOME:" + Environment.GetEnvironmentVariable("HOME"));

            //ユーザーのコマンドシェルの名前 (シェルアウトコマンドがよく使う)
            Console.WriteLine("SHELL:" + Environment.GetEnvironmentVariable("SHELL"));

            //セッションコンソールまたは端末エミュレータウィンドウの端末タイプの名前
            Console.WriteLine("TERM:" + Environment.GetEnvironmentVariable("TERM"));

            //環境変数の名前と値をすべて列挙する
            foreach (DictionaryEntry environmentVariable in Environment.GetEnvironmentVariables())
            {
                Console.WriteLine("-------------------------------------");
                Console.WriteLine("Key:{0}", environmentVariable.Key);
                Console.WriteLine("Value:{0}", environmentVariable.Value);
            }

        }
    }
}

結果

USER:mitsugi
LOGNAME:mitsugi
HOME:/Users/mitsugi
SHELL:/bin/bash
TERM:xterm-256color
-------------------------------------
Key:HOME
Value:/Users/mitsugi
-------------------------------------
Key:USER
Value:mitsugi
-------------------------------------
Key:_
Value:/usr/local/share/dotnet/dotnet
-------------------------------------
Key:TERM_PROGRAM
Value:Apple_Terminal
-------------------------------------
Key:LANG
Value:ja_JP.UTF-8
-------------------------------------
※省略