Linux常用命令-env

命令

env

描述

run a program in a modified environment
临时修改环境变量来运行程序

用法

1
env [OPTION]... [-] [NAME=VALUE]... [COMMAND [ARG]...]

选项

1
2
3
4
Options:
-i 忽略所有环境变量
-0 不换行显示
-u 取消指定变量

注意

示例

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
# 默认显示系统环境变量
$ env | grep HOME
HOME=/root
# 修改HOME变量
$ env HOME=/tmp | grep HOME
HOME=/tmp
# 注意直接执行命令无法获取新的变量值
$ env HOME=/tmp echo $HOME
/root
# 只能执行脚本或程序才能获取新的变量值
$ echo 'echo $HOME' > a.sh
$ env HOME=/tmp sh a.sh
/tmp
$ sh a.sh
/root
# -i忽略所有变量
$ env -i sh a.sh
# -u取消变量
$ env -u HOME sh a.sh
$ echo 'echo $ENV' >> a.sh
# 新增变量ENV
$ env HOME=/tmp ENV=dev sh a.sh
/tmp
dev
# env命令修改或新增变量是临时的,仅对于当前执行的脚本有效
$ env | grep ENV