shell脚本中source无效

发现在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中执行的命令 

 

posted on 2019-01-16 11:22  老吃鸡  阅读(8006)  评论(0编辑  收藏  举报

导航