之前写一个脚本“run”,想进入一个目录,一直没有成功,今天网上查看了一下,原来这是因为shell在执行脚本时,会创建一个子shell,并在子shell中逐个执行脚本中的指令; 而子shell中从父shell中继承了环境变量,但是执行后不会改变父shell的环境变量;如果想要代码中切换目录的操作生效,只需要通过source 命令执行即可:
source ./run , 如果嫌麻烦,也可以用另外一个点来替代source:
. ./run即可。
source ./run , 如果嫌麻烦,也可以用另外一个点来替代source:
. ./run即可。