Help us understand the problem. What is going on with this article?

コマンドでの環境変数の受け渡し

More than 1 year has passed since last update.

概要

コマンド実行する際に、環境変数を渡す機会があり、そのやり方について調べた内容をメモしておく。

実行時に環境変数を定義する

動作確認用のシェルスクリプトを作成する。

test.sh
#!/bin/bash
echo $APP_ENV
echo $APP_FILE_TYPE

実行例1)

ターミナル
$ APP_ENV=development APP_FILE_TYPE=direct sh test.sh
development
direct

実行例2)

ターミナル
$ export APP_ENV=development; export APP_FILE_TYPE=direct; sh test.sh
development
direct

別ファイル(.sh)に定義したものを読み込む

環境変数を定義したファイルを作成する。

secrets.sh
#!/bin/bash

# Environment
export APP_ENV=testing

# Environment file type.
export APP_FILE_TYPE=shell

実行してみる。

ターミナル
$ source ./secrets.sh; sh test.sh
testing
shell

別ファイル(.env)に定義したものを読み込む

環境変数を定義したファイルを作成する。

.env
# Environment
APP_ENV=local

# Environment file type.
APP_FILE_TYPE=config

実行してみる。

ターミナル
$ export $(cat .env | grep -v ^# | xargs); sh test.sh
local
config

参考サイト

reflet
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした