获取当前运行脚本所在路径
如果直接运行该脚本pwd命令就可以,但如果是通过其他脚本调用该脚本pwd得到的是前者的路径
比如有如下目录结构
|--a.sh
--dir
|--b.sh
直接在a.sh所在目录调用./a.sh
,a.sh中调用b.sh,此时b.sh中的pwd得到结果是a.sh所在路径而不是当前脚本b.sh所在路径
需要通过$0
(调用该脚本的命令)获取该脚本路径再cd至该路径下pwd,注意这种方法也是针对脚本中显示调用sh方式有效,通过.或source方式$0
不会被重新赋值仍然无效
SCRIPT_DIR=$(cd $(dirname "$0") && pwd)