shell脚本中source无效
程序员文章站
2022-09-04 18:20:29
发现在shell里面执行source,提示找不到命令。所以,我取搜了一些资料,总结一下。 一. 脚本中,source找不到命令 是因为用了sh执行脚本,而debian系统的sh指向dash。需要更改系统sh指向: (1)cd /bin (2)mv sh sh.old (3)ln -s sh bash ......
发现在shell里面执行source,提示找不到命令。所以,我取搜了一些资料,总结一下。
一.
脚本中,source找不到命令--------------是因为用了sh执行脚本,而debian系统的sh指向dash。需要更改系统sh指向:
(1)cd /bin
(2)mv sh sh.old
(3)ln -s sh bash
二.
为什么没有在控制台界面看到source的结果?--------因为控制台是一个shell,脚本是他的子shell。两者不是同一个环境。
分清楚几个shell执行的环境:
(1)sh、bash、./ 新建一个子shell执行脚本
(2). ./test source ./test 这两个命令是在本shell中执行的命令