本文将详细介绍linux在shell脚本中获取该脚本的所在绝对路径的操作方法,需要的朋友可以参考下
 
 
脚本名:a.sh 
位置:/tmp/whuang/study/java 
脚本内容: 

复制代码
代码如下:

#!/bin/sh 
this_dir=`pwd` 
dirname $0|grep "^/" >/dev/null 
if [ $? -eq 0 ];then 
this_dir=`dirname $0` 
else 
dirname $0|grep "^\." >/dev/null 
retval=$? 
if [ $retval -eq 0 ];then 
this_dir=`dirname $0|sed "s#^.#$this_dir#"` 
else 
this_dir=`dirname $0|sed "s#^#$this_dir/#"` 
fi 
fi 
echo $this_dir 

---------------------------------------------- 
功能:获取脚本的绝对路径。 
测试: 

[root@ppc40 java]# pwd 
/tmp/whuang/study/java 
[root@ppc40 java]# sh a.sh 
/tmp/whuang/study/java 
[root@ppc40 java]# cd .. 
[root@ppc40 study]# sh java/a.sh 
/tmp/whuang/study/java 
[root@ppc40 study]# sh ./java/a.sh 
/tmp/whuang/study/java