1.命令简介

export 命令为 Shell 内建命令,用于设置或显示环境变量,环境变量包含变量与函数。

在 Shell 中执行程序时,Shell 会提供一组环境变量。export 可新增、删除或修改环境变量,供后续被执行的程序使用。export 的作用效果仅限于当前登录。

2.命令格式

export [-fn] [NAME[=WORD]]...
export -p

3.选项说明

-f表示 NAME 为函数名称
-n删除指定的变量。变量实际上并未删除,只是不会输出到后续指令的执行环境中
-p列出所有的 Shell 环境变量

4.常用示例

(1)定义环境变量并赋值。

export MYNEWV=8

(2)修改指明 Shell 命令搜索路径的环境变量 PATH。

export PATH=$PATH:/usr/local/mysql/bin

查看是否已经设置好,可以使用命令export -p命令来查看,也可以使用 echo 命令打印变量内容。

export -p | grep PATH#或
echo $PATH

(3)export 用于 Shell 脚本。
用户登录到 Linux 系统后,系统将启动一个用户 Shell。在这个 Shell 中,可以使用 Shell 命令或声明变量,也可以创建并运行 Shell 脚本程序。系统将创建一个子 Shell 进程。此时,系统中将有两个 Shell 进程,一个是登录时系统启动的 Shell 进程,另一个是系统为运行脚本创建的 Shell 进程。当一个脚本运行完毕,它的脚本 Shell 进程将终止,可以返回到执行该脚本之前的 Shell。从这种意义上来 说,用户可以有许多 Shell 进程,每个 Shell 进程都是由其父 Shell 进程派生的。

如果在一个 Shell 脚本中定义了一个变量,该脚本运行时,这个定义的变量只是该脚本内的一个局部变量,子 Shell 无法引用它。要使某个变量可以在子 Shell 中被引用,可以使用 export 命令对已定义的变量进行导出,称为导出变量。系统在创建每一个新的 Shell 时会拷贝导出变量,子 Shell 可以访问或修改导出变量,但是这种修改父 Shell 看不到。

例如脚本 test1.sh 中调用脚本 test2.sh,test2.sh 中使用 test1.sh 定义的变量shareVar。

test1.sh 定义如下:

#!/bin/sh
shareVar=666
export shareVar
./test2.sh

test2.sh 定义如下:

#!/bin/sh
echo "in $0"
echo $shareVar

执行 test1.sh 输出结果如下:

./test1.sh
in ./test2.sh
666

5.Linux 设置环境变量的三种方法

(1)使用 export 命令。

export PATH=$PATH:/usr/local/mysql/bin

注意:直接使用 export 设置的变量都是临时变量,也就是说退出当前的 Shell 为该变量定义的值便不会生效了。我们可以使用如下两种方式使变更永久有效。

(2)修改 /etc/bashrc 或 /etc/profile,加入如下行,对所有用户永久生效。

export PATH=$PATH:/usr/local/mysql/bin

注意:修改完这个文件必须要使用如下命令执行配置文件的内容,在不用重启系统的情况下使修改的内容生效。

source /etc/profile
# 或
. /etc/profile

(3)修改 ~/.bashrc 或者 ~/.bash_profile 文件,加入如下行,只对当前用户永久生效。

export PATH=$PATH:/usr/local/mysql/bin

修改这个文件之后同样也需要使用 source 或者是 . 命令使配置文件生效。


参考文献

[1] export manual
[2] 菜鸟教程.Linux export命令
[3] linux下export命令添加、删除环境变量

Linux 命令(49)—— export 命令(builtin)相关推荐

  1. 【Linux】5.linux下的export命令和环境变量

    linux下的export命令和环境变量 linux中在 profile 或者 bashrc 或者其他类似的文件中设置环境变量时(比如PATH),如果没有export,那么只能在直接启动的shell中 ...

  2. linux系统export,Linux入门进阶 - 如何在Linux中使用export命令

    原标题:Linux入门进阶 - 如何在Linux中使用export命令 来自: Linux迷 链接:https://www.linuxmi.com/linux-export.html Linux ex ...

  3. linux如何export文件夹,学习如何在Linux中使用export命令

    Linux export命令会标记哪些值需要传递给一组子进程.这是bash shell提供的一个简单但有用的特性.它允许管理员在不中断当前会话的情况下传递环境的配置参数.这就是为什么在终端会话重新启动 ...

  4. Linux入门进阶 - 如何在Linux中使用export命令

    Linux export命令会标记哪些值需要传递给一组子进程.这是bash shell提供的一个简单但有用的特性.它允许管理员在不中断当前会话的情况下传递环境的配置参数.这就是为什么在终端会话重新启动 ...

  5. Echo命令和Export命令

    Echo命令 [root]# echo "the echo commane good" Echo –n 表示不换行输出 -e:该参数意为激活转义字符,使用-e选项时,若字符串中出现 ...

  6. Linux中使用export命令设置环境变量

    Linux export 命令 2011-08-31 22:36:39|  分类: 命令总结|举报|字号 订阅 功能说明:设置或显示环境变量. ############################ ...

  7. linux环境变量 export命令详解

    由host $ export DVSDK="${HOME}/ti-dvsdk_dm368-evm_xx_xx_xx_xx"引发的问题 1.${HOME}:首先, HOME 是个变量 ...

  8. declare命令,export命令

    declare命令 declare[+/-][选项]变量名  选项  -:给变量设置类型属性  +:取消变量的类型属性  -a:将变量声明为数组型  -i:将变量声明为整数型(integer)  -x ...

  9. 【Linux】一步一步学Linux——export命令(211)

    00. 目录 文章目录 00. 目录 01. 命令概述 02. 命令格式 03. 常用选项 04. 参考示例 05. 附录 01. 命令概述 export命令用于将shell变量输出为环境变量,或者将 ...

最新文章

  1. 高中计算机二级考试是考什么时候,浅谈有效实施高中计算机教学的方法_计算机二级考试时间...
  2. 【推导】计蒜客17119 2017 ACM-ICPC 亚洲区(西安赛区)网络赛 F. Trig Function
  3. VTK:vtkArrayCalculator用法实战
  4. How is jsonModel.getProperty implemented
  5. 圆周率一千万亿位_圆周率是如何计算的?祖冲之的缀术居然失传了
  6. yy主播旁边的机器人_YY上三位“聪明”主播,伽柏垄断主播设备,其余两位成为老板...
  7. 杨凌职业技术学院计算机专业宿舍,杨凌职业技术学院宿舍条件怎么样
  8. 使用电脑时,眼睛离电脑多远才合适
  9. 解决Mac自动切换输入法
  10. 绝妙:永不过期的刷Q币技巧 - bh
  11. python找最长的单词,Python 找出英文单词列表(list)中最长单词链
  12. 从hilinux.com架设谈网站或其他服务器运维
  13. 【XSY3952】简单的计数题(dp)
  14. linux驱动文件目录
  15. 来自作业本的写给90后
  16. 在windows上搭建React Native开发环境
  17. 关于计算机的网络作文,关于网络作文
  18. autojs安卓免root实现备份当前文件夹脚本
  19. 3d动画用云渲染靠谱吗?
  20. TypeScript 初体验:第一个 TS 文件

热门文章

  1. WMI-Win32_BIOS 参数说明
  2. 多VLAN配置DHCP
  3. 关于Java获取系统信息
  4. 11月3日云栖精选夜读:《maven实战》读书笔记2——maven安装(windows和eclipse插件)...
  5. Spring Aop pointcut expression表达式解析
  6. MySQL高可用方案-PXC环境部署记录
  7. WinForm 自动完成控件实例代码简析
  8. 在java中如何把字符串转换成时间格式?
  9. 第二章例题:EnvironmentVars
  10. 【软件测试】软件测试的基本流程(一般步骤)