[英]Am I using python's subprocess.call correctly?
我正在嘗試從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”子目錄,我可以。
我在這里錯過了什么?
也許。
import subprocess
subprocess.call(["tar","-cf", "O.tar", "./O"])
它會運行:
import subprocess
import sys
proc = subprocess.Popen(["tar","-cf O.tar ./O"],stdin=subprocess.PIPE)
proc.communicate()
如果你可以執行一些其他命令或程序使用sys.executeable()
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.