一、shell获取脚本当前路径
cur_dir=$(cd "$(dirname "$0")"; pwd) #获取当前脚本的绝对路径,参数$0是当前脚本对象
等同于cd `dirname $0`; pwd
但是,cd "dirname $0";pwd是错的,因为dirname不能用双引号
代码实例:
echo $(cd `dirname$0`;pwd)
TEST=`cd $(dirname $0);pwd`
echo $TEST
输出:
/root/peter
/root/peter
二、python获取当前路径
例子,cmd = "python %s/parser/parseAppPage.py" %sys.path[0]获取当前路径。
Python获取路径的方式主要有两种:
1)os.path.dirname(os.path.abspath("__file__"))#通过文件对象的路径获取,__file__是当前运行脚本。
2)sys.path[0]#直接使用当前路径参数
这两种方式在子程序调用时会不同,子程序执行这两种代码,主程序调用子程序时,这两种方式获得的路径不同,参考http://blog.csdn.net/longshenlmj/article/details/45174363中”子程序脚本的当前路径问题”:
第一种获得主程序路径,也就是说__file__对象始终存的是主程序脚本
第二种才能获取子程序脚本的路径