dirname ${BASH_SOURCE[0]}

例如在目录/root/aaa/bbb下,存在脚本文件test.sh, 脚本文件中存在这样一句话,code

BD=`dirname ${BASH_SOURCE[0]} `

,意思就是说获取脚本文件test.sh所在目录的路径,但在不一样目录下执行脚本test.sh,BD的值会有所不一样。 一、在/root/aaa/bbb下,执行test.sh,BD的值为 . 二、在/root/aaa/下,执行test.sh,BD的值为./bbb 三、在/root下,执行test.sh,BD的值为./aaa/bbb 其中,BASH_SOURCE[0]表明脚本文件所在目录及文件名;dirname命令是获取文件所在目录。 若是脚本文件所在目录的绝对路径,能够结合pwd命令,具体以下所示:test

BD=`dirname ${BASH_SOURCE[0]}`
cd $BD
BASEDIR=`pwd`

,BASEDIR即为脚本文件test.sh的绝对目录,也便是/root/aaa/bbb。脚本

相关文章
相关标签/搜索