但是,其实不然。
执行脚本时候,只是在当前的shell下开了一个子进程,切换目录的 *** 作只对该进程中相关后续指令有效,但改变不了父进程的目录。
因此,当你写好了脚本,并且调用执行时,你的当前工作目录并没有变化。
那么,解决方案呢?
有两种方式解决(都是执行脚本的方式不同,脚本内容依然是一个cd语句。假定脚本为change.sh):
source change.sh
. ./change.sh
第一个点是bash的内部命令,表示在当前shell中运行
后面的“./change.sh”是命令的参数,即要执行的脚本(注:两点之间要有空格)
1、登录CentOS7系统,打开终端,输入命令env shell打印出shell进程的环境变量。
2、本地变量只存在当前shell进程。新建一个本地变量MYVAR=myvalue注意等号两边不能有空格。
3、查看本地变量set查看指定本地变量set | grep MYVAR。
4、导出本地变量为环境变量export MYVAR。
5、删除本地变量或环境变量unset MYVAR即可。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)