1

我正在尝试使用带有子进程的文件来查找文件类型

    cwdir = os.getcwd()
    Fileinput=cwdir+"/"+'testfile.zip'
    print "Current Directory %s"% cwdir
    Fileformat=subprocess.Popen('file' + Fileinput)

我得到 OSError: [Errno 2] No such file or directory。我验证并且该文件确实存在于路径中。感谢您对此的任何帮助。

4

1 回答 1

2

'file'在和之间添加空格fileinput

Fileformat = subprocess.Popen('file ' + Fileinput)
#                                  ^

否则,file/current/path/testfile.zip被视为可执行路径而不是file.

或使用以下表格:

Fileformat = subprocess.Popen(['file', Fileinput])

如果要获取命令的输出,则必须传递stdout=subprocess.PIPEPopen并阅读使用。Fileformat.stdout.read()

怎么用subprocess.check_output

>>> subprocess.check_output(['file', '/etc/passwd'])
'/etc/passwd: ASCII text\n'
于 2013-10-28T05:20:21.573 回答