Python - 我正在尝试获取pwd的输出,而是获得退出状态

时间:2013-04-21 13:30:25

标签: python

我试图获得pwd的输出:

#!python
import os
pwd = os.system("pwd")
print (pwd)

它打印0,这是成功的退出状态而不是路径。 我怎样才能获得这条路?

4 个答案:

答案 0 :(得分:9)

使用subprocess可以更好地运行系统命令,但如果您已经使用os,为什么不这样做呢

pwd = os.getcwd()

os.getcwd()可在Windows和Unix上使用。

答案 1 :(得分:2)

要获取当前工作目录,请使用os.getcwd()。但总的来说,如果你想要输出和返回代码:

import subprocess
PIPE = subprocess.PIPE
proc = subprocess.Popen(['pwd'], stdout=PIPE, stderr=PIPE)
out, err = proc.communicate()
errcode = proc.returncode
print(out)
print(errcode)

答案 2 :(得分:1)

您不能使用os.system执行此操作,但os.popen会为您返回该值:

>>> import os
>>> os.popen('pwd').read()
'/c/Python27\n'

然而,subprocess模块功能更强大,应该使用它:

>>> import subprocess
>>> p = subprocess.Popen('pwd', stdout=subprocess.PIPE)
>>> p.communicate()[0]
'/c/Python27\n'

答案 3 :(得分:1)

当前目录完整路径:

import os
print os.getcwd()