【发布时间】:2015-05-06 08:22:08
【问题描述】:
我在尝试将列表传递给子进程调用命令时遇到问题。我正在尝试调用 windows robocopy 函数,传递它应该过滤的文件类型列表。
filter_list = ['*.txt', '*.dat']
call(["robocopy", src, dst, filter_list, "/e"])
因此,传递列表本身不起作用,robocopy 的输出表明它正在尝试查找文件类型“.txt.dat”,就好像整个列表是单个文件类型一样。
然后我尝试了以下
call(["robocopy", src, dst, ','.join(filter_list), "/e"])
但是,这给出了与我第一次尝试相同的输出。有谁知道如何传递一个列表并将其正确划分?非常感谢任何帮助!
【问题讨论】:
-
你可以试试
call(["robocopy", src, dst, " ".join(filter_list), "/e"])吗? -
@StianOK 仍然是同样的结果。 Robocopy 现在采用“*.txt *.dat”的文件类型过滤器
标签: python subprocess call robocopy