如何执行多次出现的命令并每次从列表中更改变量

时间:2012-07-10 11:12:50

标签: tcl

我有一个包含的列表    72.xx.xxx.xxx 72.xx.xxx.xxx (有一些空间) 我有一个变量say var

现在我必须执行$ var次命令,每次都必须使用“72.xx.xxx.xxx”。 让我们说命令是: “reset vpn $ IP”。

我必须执行上述命令两次(存储在变量中)和两个存储在列表中的IP地址。 任何人都可以帮助TCL代码吗? 提前谢谢。

1 个答案:

答案 0 :(得分:2)

这真是一项功课。任务规范缺少一些重要的细节。

如果要迭代列表中所有 IP,请执行

set ips {72.xx.xxx.xxx 72.xx.xxx.xxx}
foreach ip $ips {
  reset vpn $ip
}

如果向ips列表添加更多值,foreach命令将在所有剩余元素上迭代更多次。

如果你想迭代,比如说,首先是N个元素,只需逐个选择它们:

set ips {72.xx.xxx.xxx 72.xx.xxx.xxx 72.xx.xxx.xxx 72.xx.xxx.xxx ...}
set ntimes 2
for {set ix 0} {$ix < $ntimes} {incr ix} {
  reset vpn [lindex $ips $ix]
}

等等。

没有火箭科学。请阅读the tutorial,阅读the book,请在您首先尝试自己之前尽量避免这些简单的问题。