标签:bsp ash 运行 直接 路径 加载 机制 linux 影响
脚本:运行的副作用不影响父环境,开辟了fork子进程;
函数:副作用,定义的变量,数据默认直接添加到了调用者的环境,也是它自己的环境;不想副作用影响调用者环境,就必须主动用local修饰;
脚本可以使用source退化为函数;
尽量使用脚本,而不是函数,除非函数本身就是系统级别的作用范围;
使用脚本的好处
1.把函数封装在脚本中可以形成类似于文件范围的访问隔离;
2.脚本是文件级别的东西,文件目录,绝对路径本身就给它带来版本区分,作用范围划分的优势.
3.linux文件有缓存机制,脚本不会明显的比内存中的函数慢,而且4.2以上版本的bash还可能直接把命令名和脚本路径hash绑定.
4.函数从文件加载到环境后,修改函数需要重写后需要重新加载.脚本文件不存在这个步骤. 函数也是要用脚本文件落地到磁盘的.
标签:bsp ash 运行 直接 路径 加载 机制 linux 影响
原文地址:https://www.cnblogs.com/jf001/p/10262893.html