Linux 基础-查看和设置环境变量

  • Linux 基础-查看和设置环境变量已关闭评论
  • 171 次浏览
  • A+
所属分类:linux技术
摘要

在 Linux中,环境变量是一个很重要的概念。环境变量可以由系统、用户、Shell 以及其他程序来设定。变量就是一个可以被赋值的字符串,赋值范围包括数字、文本、文件名、设备以及其他类型的数据

一,查看环境变量

在 Linux中,环境变量是一个很重要的概念。环境变量可以由系统、用户、Shell 以及其他程序来设定。变量就是一个可以被赋值的字符串,赋值范围包括数字、文本、文件名、设备以及其他类型的数据

值得一提的是,Linux 系统中环境变量的名称一般都是大写的,这是一种约定俗成的规范。

1,使用 echo 命令查看单个环境变量,例如:echo $PATH;使用 env 查看当前系统定义的所有环境变量;使用 set 查看所有本地定义的环境变量。查看 PATH 环境的实例如下:

Linux 基础-查看和设置环境变量

使用 unset 删除指定的环境变量set 也可以设置某个环境变量的值。清除环境变量的值用 unset 命令。如果未指定值,则该变量值将被设为 NULL。示例如下:

$ export TEST="Test..."  # 增加一个环境变量 TEST $ env|grep TEST  # 此命令有输入,证明环境变量 TEST 已经存在了 TEST=Test... unset  TEST  # 删除环境变量 TEST $ env|grep TEST  # 此命令没有输出,证明环境变量 TEST 已经删除 

2,C 程序调用环境变量函数

  • getenv(): 返回一个环境变量。
  • setenv():设置一个环境变量。
  • unsetenv(): 清除一个环境变量。

二,环境变量类型

1,按照变量的生存周期划分,Linux 变量可分为两类:

  • 永久的:需要修改配置文件,变量永久生效。
  • 临时的:使用 export 命令声明即可,变量在关闭 shell 时失效。

2,按作用的范围分,在 Linux 中的变量,可以分为环境变量和本地变量:

  • 环境变量:相当于全局变量,存在于所有的 Shell 中,具有继承性;
  • 本地变量:相当于局部变量只存在当前 Shell 中,本地变量包含环境变量,非环境变量不具有继承性。

环境变量名称都是大写,常用的环境变量意义如下所示。

  • PATH:决定了 shell 将到哪些目录中寻找命令或程序
  • HOME:当前用户主目录
  • HISTSIZE:历史记录数
  • LOGNAME:当前用户的登录名
  • HOSTNAME:指主机的名称
  • SHELL:当前用户 Shell 类型
  • LANGUGE:语言相关的环境变量,多语言可以修改此环境变量
  • MAIL:当前用户的邮件存放目录
  • PS1:基本提示符,对于 root 用户是 #,对于普通用户是 $

三,设置环境变量

Linux添加环境变量有三种方法:

  • /etc/profile 文件中添加变量【对所有用户生效(永久的)】
  • 在用户目录下的 .bash_profile 文件中增加变量【对单一用户生效(永久的)】
  • 直接运行 export 命令定义变量【只对当前 shell(BASH) 有效(临时的)】

修改 profile 文件后需运行 source /etc/profile 命令才能生效,否则只能在下次重进此用户时生效。

四,参考资料

Linux环境变量总结