运行 使用 TCL 脚本对多个文件执行命令
Running a command on multiple files using TCL script
我正在使用某种工具 (Synopsys Design Vision),我是 运行 通过使用 TCL 脚本。
命令是这样的
analyze -library work -format verilog {/user/codes/abcd.v }
现在我有一个包含 5000 个 .v 扩展名文件的文件夹,这些文件的名称为 abcd_1、abcd_2、abcd_3.....abcd_5000。现在我想自动化脚本,以便该命令适用于每个文件。
我试过这样做
for { set a 1} {$a < 5001} {incr a} {
analyze -library work -format verilog {/user/codes/abcd_$a.v }
#other commands
.
.
}
但是,它不工作并且出现错误。我没有那么多地使用 tcl 脚本。
请指出我哪里出错了,我该怎么做才能让它发挥作用。谢谢。
简而言之,使用引号而不是大括号,因为后者可以防止 variable substitution 发生:
for {set a 1} {$a < 5001} {incr a} {
analyze -library work -format verilog "/user/codes/abcd_$a.v"
# ...
}
但是,您可能还想检查 file
命令到 assemble 文件路径。
我正在使用某种工具 (Synopsys Design Vision),我是 运行 通过使用 TCL 脚本。
命令是这样的
analyze -library work -format verilog {/user/codes/abcd.v }
现在我有一个包含 5000 个 .v 扩展名文件的文件夹,这些文件的名称为 abcd_1、abcd_2、abcd_3.....abcd_5000。现在我想自动化脚本,以便该命令适用于每个文件。
我试过这样做
for { set a 1} {$a < 5001} {incr a} {
analyze -library work -format verilog {/user/codes/abcd_$a.v }
#other commands
.
.
}
但是,它不工作并且出现错误。我没有那么多地使用 tcl 脚本。
请指出我哪里出错了,我该怎么做才能让它发挥作用。谢谢。
简而言之,使用引号而不是大括号,因为后者可以防止 variable substitution 发生:
for {set a 1} {$a < 5001} {incr a} {
analyze -library work -format verilog "/user/codes/abcd_$a.v"
# ...
}
但是,您可能还想检查 file
命令到 assemble 文件路径。