Linux/Unix 中的环境变量
什么是环境变量?
环境变量或ENV基本上定义了环境的行为。它们会影响正在进行的进程或在环境中执行的程序。
环境变量的作用域
任何变量的范围是可以访问它或定义它的区域。 Linux 中的环境变量可以具有全局或局部作用域。
全球的
在终端中定义的全局范围的 ENV 可以从终端中存在的特定环境中的任何地方访问。这意味着它可以用于在该终端绑定的环境中运行的所有类型的脚本、程序或进程。
当地的
终端中定义的本地范围的 ENV 不能被终端中运行的任何程序或进程访问。它只能由终端(定义它的终端)本身访问。
如何访问 ENV?
句法:
$NAME
注意:本地和全局环境变量的访问方式相同。
如何显示 ENV?
显示任何 ENV
句法:
$ echo $NAME
显示所有 Linux ENV
句法:
$ printenv //displays all the global ENVs
or
$ set //display all the ENVs(global as well as local)
or
$ env //display all the global ENVs
例子:
如何设置环境变量?
设置全局 ENV
$ export NAME=Value
or
$ set NAME=Value
例子:
设置本地 ENV
句法:
$ NAME=Value
例子:
设置用户范围的 ENV
这些变量在 ~/.bashrc, ~/.bash_profile, ~/.bash_login, ~/.profile 中设置和配置
文件根据要求。这些变量可由特定用户访问,并在断电后持续存在。
可以按照以下步骤执行此操作:
第一步:打开终端。
第2步:
$ sudo vi ~/.bashrc
第三步:输入密码。
第四步:在打开的文件中添加变量。
export NAME=Value
第 5 步:保存并关闭文件。
第 6 步:
$ source ~/.bashrc
例子:
设置系统范围的 ENV
这些变量根据需要在/etc/environment、/etc/profile、/etc/profile.d/、/etc/bash.bashrc文件中设置和配置。这些变量可以被任何用户访问并通过断电保持.
可以按照以下步骤执行此操作:
第一步:打开终端。
第2步:
$ sudo -H vi /etc/environment
第三步:输入密码。
第四步:在打开的文件中添加变量。
NAME=Value
第 5 步:保存并关闭文件。
第 6 步:注销并再次登录。
如何取消设置环境变量?
句法:
$ unset NAME
or
$ NAME=''
例子:
注意:要取消设置永久 ENV,您需要重新编辑文件并删除在定义它们时添加的行。
Linux 中一些常用的 ENV
$USER: Gives current user's name.
$PATH: Gives search path for commands.
$PWD: Gives the path of present working directory.
$HOME: Gives path of home directory.
$HOSTNAME: Gives name of the host.
$LANG: Gives the default system language.
$EDITOR: Gives default file editor.
$UID: Gives user ID of current user.
$SHELL: Gives location of current user's shell program.
例子: