我正在尝试从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”子目录,我可以。
我在这里缺少什么?
答案 0 :(得分:3)
也许
import subprocess
subprocess.call(["tar","-cf", "O.tar", "./O"])
答案 1 :(得分:-1)
它将运行:
import subprocess
import sys
proc = subprocess.Popen(["tar","-cf O.tar ./O"],stdin=subprocess.PIPE)
proc.communicate()
如果可以执行其他命令或程序,请使用sys.executeable()