shell中source与sh区别
2024-08-25 12:47:13
shell中使用source conf.sh,是直接运行conf.sh的命令,不创建子shell,类似与html中include,而sh是则创建子shell,
子shell里面 的变量父shell无法使用,对环境变量的修改也不影响父shell。父shell中的局部变量,子shell也无法使用,
只有父shell的环境变量, 子shell能够使用。还有一个exec conf.sh,这个与source类似,区别是exec执行完,不再执行后面的语句。
source命令的作用就是用来执行一个脚本,那么:source a.sh 同直接执行 ./a.sh 有什么不同呢,
比如你在一个脚本里export $KKK=111 ,如果你用./a.sh执行该脚本,执行完毕后,你运行 echo $KKK ,发现没有值,
如果你用source来执行,然后再echo ,就会发现KKK=111。因为调用./a.sh来执行shell是在一个子shell里运行的,
所以执行后,结果并没有反应到父shell里,不过source不同,他就是在本shell中执行的,所以能看到结果。
最新文章
- js和jquery实现简单的选项卡
- mysql注入研究
- 使用jQuery为表单添加回车事件
- Power-BI绿色开发平台
- leetcode 105 Construct Binary Tree from Preorder and Inorder Traversal ----- java
- 无责任Windows Azure SDK .NET开发入门篇三[使用Azure AD 管理用户信息]
- win下Maven安装和基本设置
- 两种应该掌握的排序方法--------1.shell Sort
- DedeCMS源码安装
- extjs在form表单提交成功、故障响应信息
- 【Java】大文本字符串滤重的简单方案~
- android 下 利用webview实现浏览器功能
- 系统学习DOM事件机制
- [转]Uipath、BluePrism、AA产品对比之设计器篇
- Java开发经常容易犯的错误
- EPOLL AND Nonblocking I/O
- vue axios拦截器 + 自编写插件 实现全局 loading 效果;
- Visualforce控制器
- [luogu1351][联合权值]
- mint19 源码安装python3.7