问题
在写shell脚本时候,编写了'cd+目录',但是使用sh或者./执行脚本之后目录并没有切换,如下代码所示
#!/bin/bash
cd /client
原因
首先代码是没有问题的,原因在执行方式上,当我们使用./执行脚本时,会产生一个子shell,相当于脚本是在子shell中执行,子shell执行完成之后会马上退出,子shell中的变量和操作会被收回。
解决办法
更换shell脚本执行方式:只需要改成souce xxx.sh或者 . ./xxx.sh即可。
注意. ./xxx.sh 的点与点之间有空格
. ./xxx.sh