今天继续在看Building Linux Embedded Systems一书,进入第四章,有一些实际的操作,其中在介绍了良好的组织架构(文件夹)后,建议些一个script可以进行不同的开发环境。里面很简单,包括一个export和cd的命令,这个脚本假设为
export PROJECT=/home/aaa/project1
cd $PROJECT
并取名字为 test
我执行$ ./test,发现没有效果,然后在里面增加两个跟踪语句,如下
export PROJECT=/home/aaa/project1
echo $PROJECT
cd $PROJECT
pwd
能够正确执行,并pwd能够指向期待的路径。但是./test脚本执行完之后,设置的环境没有保留,恢复原来的环境,恢复到原来的当前目录,也清空了PROJECT的内容。
所以:如果需要环境一直生效,需要. test。我们根据所需,执行.xx或者./xx,.xx能够保留shell中的执行环境或者结果,而./xx不能