export
命令用于在Linux系统中设置环境变量,这里我们介绍其常见用法。
设置一个环境变量需要使用export
命令,命令格式如下。
export <环境变量名称>=<环境变量值>
打开终端后直接使用export
命令设置的环境变量只在当前Shell内有效,因此这种方法设置的环境变量是临时的。实际上,Linux中设置环境变量主要有以下几种方式:
全局环境变量:我们可以通过在/etc/profile
配置文件内使用export
命令设置全局环境变量,这个脚本文件在每个用户登入时都会运行,因此其中设置的环境变量也是全局生效的。
用户环境变量:如果只希望在某一个用户下配置环境变量,则可以使用.bashrc
,该脚本会在每次新的Bash Shell会话启动时执行(如果使用其它Shell,则可能涉及其它对应的配置文件)。
临时环境变量:单独使用export
命令来临时设置一个环境变量,它仅在当前Shell会话内有效。
使用$
可以在Bash Shell中引用环境变量,例如$MY_ENV
引用了环境变量MY_ENV
。
echo $MY_ENV
PATH
环境变量用于指定系统搜索可执行文件的路径,这个路径有很多,因此PATH
采用:
作为分隔符进行分隔。不过要注意这并不是一个环境变量的通用规则,而是程序读取PATH
环境变量时的约定,下面是一个PATH
环境变量的例子。
/opt/Qt5.7.0/5.7/gcc_64//bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/opt/jdk/bin:/opt/jdk/jre/bin:/opt/apache-maven-3.3.9/bin:/opt/apache-ant-1.9.7/bin:/home/gacfox/.gradle/wrapper/dists/gradle-3.3-bin/64bhckfm0iuu9gap9hg3r7ev2/gradle-3.3/bin:/opt/Android/Sdk/platform-tools:/opt/Android/Sdk/tools:/opt/apache-jmeter-3.2/bin
此时假如我们要将一个路径/home/gacfox/mydemo/bin
加入PATH
,追加设置该环境变量的例子如下。
export PATH=$PATH:/home/gacfox/mydemo/bin
通常上述命令可以写入/etc/profile
或.bashrc
,以在全局或用户下生效。