Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationEventAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
2
Help us understand the problem. What are the problem?

More than 3 years have passed since last update.

@y_sekitoba

備忘録_環境変数_自分用メモ

コピペでどうにか生きてきたけど自分用に知識の整理

環境変数とは「シェル環境を設定するための変数」

環境変数を表示

$ printenv [変数名]

変数を指定せずに実行すると環境変数の一覧を表示する

環境変数の設定

環境変数を設定する際にはexportコマンドを使用

$ export [変数名]
// 変数の定義と設定を同時に指定
$ export [変数名]=[文字列]

// 上記サンプル
$ export TESTENV="test"

環境変数をクリアする

$ unset [変数名]

環境変数PATH

環境変数PATHにはコマンドの保存先を指定

コマンドのパスを通す

自作でコマンドを作成した場合に「コマンド名」だけで実行したい場合などはパスを通す必要がある。
環境変数$PATHに対象のコマンドが入っているディレクトリを追加する

以下サンプルプロセス
※~/bin のディレクトリに自作コマンドが入っているという前提

// 環境変数PATHにディレクトリを追加
$ PATH=~/bin:$PATH

// exportを使用して環境変数に指定
$ export $PATH

注) 環境変数にディレクトリを追加する際に下記のようにすると元の内容が上書きされカオスになる

// 上書きされる...
$ PATH=~/bin

必ず「:$PATH」をつけるように!!!

補足

$PATHに複数のディレクトリが格納されている場合は、最初のディレクトリが優先される。
同じ名前のコマンドがある場合などにこれを理解していないとうまく設定されない。

// ~/binが先頭に格納され最優先になる
$ PATH=~/bin:$PATH

// ~/binが最後に格納され優先順位が下がる
$ PATH=$PATH:~/bin

設定ファイルに追記(.zshrcや.zsh_profileなど)

exportしてもシェルをログアウトしてしまうと設定が消えてしまう。
毎回exportをするというの現実的ではないので「設定ファイルに追記(.zshrcや.zsh_profileなど)」する

環境設定ファイルの動作を確認する

環境変数はログインしなおすことで確認できます。
しかし、設定が失敗していた場合ログインさえできなくなるので通常は下記のコマンドを使用する

// 基本形
$ source [ファイルのパス]

// ~/.zshrc(zshの設定ファイル)を読み込ませる
$ soure ~/.zshrc
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
2
Help us understand the problem. What are the problem?