我有一个setup.cfg
配置脚本,其中列出了要安装的一堆本地文件,例如:
[files]
packages = tests
utils
scripts = utils/Communication.ComModule.dll
utils/Communication.DeployerLib.Controls.dll
utils/Communication.DeployerLib.dll
utils/Communication.RModule.Data.dll
utils/Communication.RModule.dll
utils/Communication.Serial.dll
utils/Components.dll
utils/Converters.dll
utils/Data.dll
utils/Log.dll
utils/Log.Log4Net.dll
....
因此,我可以使用通配符来安装每个dll
文件,而不是列出每个文件吗?这可能吗?我可以使用以下内容(安装所有dll
和所有exe
)吗?
[files]
packages = tests
utils
scripts = utils/*.dll
utils/*.exe
答案 0 :(得分:2)
如果添加glob模块,则可以。例如:
import glob
wildcard_path = "/some/directory/*.dll"
file_list = glob.glob(wildcard_path)
变量file_list
现在将是/ some /目录中所有* .dll文件的列表。因此,将您的通配符路径放在配置文件中,并使用glob来检索实际的文件名。
请记住,您需要注意如何在配置文件中输入路径。我建议在配置文件中使用绝对路径,这样无论您从哪里运行脚本,结果都是一致的。如果将相对路径传递给glob,它将从当前工作目录中查找该路径。