想要在shell文件中通过export PATH来添加路径,但是老是不成功,而直接执行export的时候却是成功的,这个想必学习shell的人都会明白是为什么,由于自己初学,所以找了下资料:
如果你直接执行export.sh 或者运行 bash export.sh, 就相当于重新开启一个子进程, 子进程中设定的环境变量不会影响到父进程(export.sh退出的时候你设置的变量就销毁了), 相当于程序中方法/函数里面的局部变量不会作用到主程序(局部变量的作用域问题)。
解决的方法是用source或者.来执行文件, 或者把你要运行的export命令放到/etc/profile 或者~/.profile (其他地方如~/.bash_rc应当也可以) 中。
source export.sh 相当于运行. export.sh(点号表示读取文件中的命令在当前进程执行。
阅读(1072) | 评论(0) | 转发(0) |