通过Windows上的列表传递python子进程参数

时间:2016-11-06 05:17:02

标签: python subprocess

使用我的python skills.trying通过列表传递subprocess.run的参数。当所有参数都可用但它没有列表时,它工作正常。

当我想以这种方式传递所有参数时,是否支持此功能?

import sys
import os
import re
import shutil
import subprocess

com_files=["compress","/c"]

if '--tozip' in sys.argv[1]:
    for dir in sys.argv[2:]:
        for i_dir in os.listdir(dir):
            if re.search(r'__\w',i_dir):
                com_files.append(os.path.abspath(dir)+'\\'+i_dir)
    print(com_files)
    subprocess.run(com_files)

以下是错误消息:

['compress', '/c', 'C:\\temp\\google\\xyz__hello__.txt', 'C:\\temp\\google\\zz__something__.jpg']
 Traceback (most recent call last):
 File "C:\copyspecial.py", line 45, in main
subprocess.call(com_files)
 File "C:\Python35-32\lib\subprocess.py", line 560, in call
with Popen(*popenargs, **kwargs) as p:
 File "C:\Python\Python35-32\lib\subprocess.py", line 950, in init
restore_signals, start_new_session)
 File "C:\Python\Python35-32\lib\subprocess.py", line 1220, in _execute_child
startupinfo)
FileNotFoundError: [WinError 2] The system cannot find the file specifi

0 个答案:

没有答案
相关问题