Fork me on GitHub

脚本中export不起作用的原因分析

 

  1. #!bin/bash  
  2. export PATH=$PATH:/usr/lib/java/jre  
  3. export PATH=$PATH:/usr/lib/java/bin  

 

---path

结果发现直接运行./ path 没起到效果, 后来发现原来机制是这样: 类似于局部变量,从当前shell中运行脚本path,是先创建一个子进程shell 然后运行脚本程序,然后子进程退出,返回父进程shell,因此子shell中对环境变量的改变并不影响父进程看到的环境变量.

 

解决办法: source ./path

将代码取出在当前shell中执行

posted @ 2017-10-08 19:45  stardsd  阅读(2385)  评论(0编辑  收藏  举报