运行 文件夹中的所有 TCL 脚本
Run all TCL scripts in a folder
我有一个包含许多 TCL 文件的文件夹,我需要 运行 所有这些文件(在 Vivado 中)。我怎样才能节省 运行 一次性完成所有这些操作的时间?有没有像这样简单的东西: source [path/]*.tcl ?
您可以首先使用 glob 命令找到所有 tcl 文件,然后浏览 tcl 文件列表并获取它们。
set $dir your/path
foreach file [glob -dir $dir */*.tcl] {
source $file
}
编辑:与 Peters 示例不同,此解决方案还在子目录中获取 .tcl 文件(请确保您需要)。
怎么样
foreach script [glob -nocomplain -dir $dir *.tcl] {source $script}
?
要运行给定目录及其子目录中的所有脚本,您可以使用tcllib,如下所示:
package require fileutil
foreach script [fileutil::findByPattern $baseDir *.tcl] {
source $script
}
我有一个包含许多 TCL 文件的文件夹,我需要 运行 所有这些文件(在 Vivado 中)。我怎样才能节省 运行 一次性完成所有这些操作的时间?有没有像这样简单的东西: source [path/]*.tcl ?
您可以首先使用 glob 命令找到所有 tcl 文件,然后浏览 tcl 文件列表并获取它们。
set $dir your/path
foreach file [glob -dir $dir */*.tcl] {
source $file
}
编辑:与 Peters 示例不同,此解决方案还在子目录中获取 .tcl 文件(请确保您需要)。
怎么样
foreach script [glob -nocomplain -dir $dir *.tcl] {source $script}
?
要运行给定目录及其子目录中的所有脚本,您可以使用tcllib,如下所示:
package require fileutil
foreach script [fileutil::findByPattern $baseDir *.tcl] {
source $script
}