0

我正在尝试从 Python 代码中创建一系列 tar 文件。作为一种做法,我有一个子目录 - 'O',其中包含我想要 tar 的文件。当我尝试打字时

tar -cf O.tar ./O

从命令行,一切正常。但是,当我进入 Python 解释器并输入

import subprocess
subprocess.call(["tar","-cf O.tar ./O"])

我收到以下错误:

tar: Cowardly refusing to create an empty archive

这有意义吗?我试过

import os
os.listdir(".")

为了确保我仍然可以从 Python shell 中看到我的“O”子目录,我可以。

我在这里想念什么?

4

2 回答 2

3

也许。

import subprocess
subprocess.call(["tar","-cf", "O.tar", "./O"])
于 2012-11-22T06:04:47.040 回答
-1

它将运行:

import subprocess
import sys
proc = subprocess.Popen(["tar","-cf O.tar ./O"],stdin=subprocess.PIPE)
proc.communicate()

如果您可以执行其他命令或程序,请使用 sys.executeable()

于 2015-10-03T15:01:36.030 回答