bash 脚本获取当前脚本的绝对路径

如果你在Bash中要调用一些处于与脚本相同路径位置的其他程序,获取这个路径就很重要。

目前我采用的方法是:

cdir=`readlink -f $0 | xargs -I{} dirname {}`

这样可以直接在cdir变量中得到当前脚本所在的绝对路径。

并且和$0本身的调用方式无关。

局限:readlink命令会展开所有符号链接,所以,包含符号链接的路径会被解析为文件系统中的路径。但是这个在目前我需要的情况下不受影响。

此条目发表在软件使用与程序设计分类目录。将固定链接加入收藏夹。