我在目录上有一个shell
bash-4.1$ pwd
/x/dev/local_base
但是当我运行python脚本时
cur_dir = os.getcwd()
print "cur dir %s" % cur_dir
并返回一个空字符串
我已经尝试了
p = subprocess.Popen("/bin/pwd", stdin=subprocess.PIPE, stdout=subprocess.PIPE, shell=True)
out, err = p.communicate()
并且它也返回空
但shell上的pwd
显示当前目录(/ x / dev / local_base)
这只发生在我离开外壳很长时间(几个小时)时。如果我回到目录,它工作正常。
我认为目录正在关闭并在后台重新创建。
关于如何获得当前工作目录的任何建议?
PS这些工作正常
p = subprocess.Popen("ls", stdin=subprocess.PIPE, stdout=subprocess.PIPE, shell=True)
out, err = p.communicate()
和
os.listdir('.')
当我在os.path.abspath
返回的其中一个文件上尝试listdir
时,它只显示相对路径,即如果listdir返回文件名README
,则返回README
,不是/x/dev/local_base/README