脚本中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中执行

原文地址:https://www.cnblogs.com/sddai/p/7638286.html