0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Go言語における環境変数使い方: osパッケージ

Last updated at Posted at 2024-02-13

環境変数は、オペレーティングシステムにおける動作環境を定義するキーと値の組み合わせです。Go言語を用いたアプリケーション開発では、環境変数を活用することで、デプロイメントの柔軟性を向上させ、設定値を外部から注入することが可能になります。

Go言語の標準ライブラリであるosパッケージは、環境変数を操作するための関数群を提供しています。

Getenvで環境変数の取得

os.Getenv() 関数を使用して、特定の環境変数の値を取得します。

package main

import (
    "fmt"
    "os"
)

func main() {
    // "HOME" 環境変数の値を取得
    home := os.Getenv("HOME")
    fmt.Println("Home directory:", home)
}

このコードスニペットは、ユーザーのホームディレクトリパスを表すHOME環境変数の値を取得し、出力します。

LookupEnvで環境変数の取得

os.LookupEnv()関数は、os.Getenv()と似ていますが、存在しない環境変数の場合にデフォルト値を返すことができます。

package main

import (
    "fmt"
    "os"
)

func main() {
    debug, exists := os.LookupEnv("APP_DEBUG")
    if exists && debug == "true" {
        fmt.Println("Debug mode enabled")
    } else {
        fmt.Println("Debug mode disabled")
    }
}

この例では、APP_DEBUG環境変数が設定されているかを確認し、設定されていればその値を、そうでなければ設定されていない旨を出力します。

Setenvで環境変数の設定

os.Setenv() 関数は、環境変数を設定または更新します。

// "DB_PORT"という環境変数を設定
os.Setenv("DB_PORT", "3306")

Unsetenvで環境変数の削除

os.Unsetenv()関数は、指定された環境変数を削除します。

// "DB_PASSWORD"という環境変数を削除
os.Unsetenv("DB_PASSWORD")

まとめ

osパッケージを使用することで、Go言語のプログラム内から環境変数を柔軟に取り扱うことができます。os.Getenv()os.LookupEnv()を使用して環境変数の値を読み取る方法、およびos.Setenv()で環境変数を設定する方法を理解することは、Go言語でのアプリケーション開発において非常に役立ちます。

参考資料

Go言語標準ライブラリ osパッケージ: https://golang.org/pkg/os/

オンラインデバッグ

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?