# 環境変数

外部アプリケーションが使用する環境を制御することはシェルの一般的なタスクです。多くの場合、環境はパッケージ化されて外部のアプリケーション起動時に与えられることで自動的に行われます。しかし時には、アプリケーションが利用する環境変数をより正確に制御したい場合があります。

アプリケーションに送られる現在の環境変数は$nu.envの値をechoして確認することができます。

> echo $nu.env
──────────────────────────┬──────────────────────────────
 COLORTERM                │ truecolor 
 DBUS_SESSION_BUS_ADDRESS │ unix:path=/run/user/1000/bus 
 DESKTOP_SESSION          │ gnome 
 DISPLAY                  │ :1 

環境はNuの設定とNuが実行されている環境から作られます。設定の章に記載されている方法で環境を恒久的に更新できます。

コマンドやパイプラインを実行するときに一時的に環境変数を更新することもできます。

> with-env [FOO BAR] { echo $nu.env.FOO }
BAR

with-envコマンドは、環境変数を一時的に与えられた値に設定します(ここでは変数"FOO"に"BAR"という値がセットされます)。ブロックは新しい環境変数が設定された状態で実行されます。

Bashなどにヒントを得た一般的な省略記法も用意されています。上の例は次のように書くことができます。

> FOO=BAR echo $nu.env.FOO
BAR