在TCL 8.4中复制多个文件

在TCL 8.4中复制多个文件,tcl,tk,Tcl,Tk,我看到了这个问题的多个答案,但没有一个是针对TCL 8.4或更早版本的 下面是我尝试过但不起作用的代码: set files [ glob home/*.tcl] file copy {*}$files dest/ 正如其中一条评论所建议的,复制问题通过使用eval进行排序。 移动文件应通过以下方式完成: eval file rename -force $flist dest/ 参考8.5+解决方案:8.5之前没有扩展运算符 例如: set files [glob home/*.tcl]

我看到了这个问题的多个答案,但没有一个是针对TCL 8.4或更早版本的

下面是我尝试过但不起作用的代码:

set files [ glob home/*.tcl] 
file copy {*}$files dest/
正如其中一条评论所建议的,复制问题通过使用eval进行排序。 移动文件应通过以下方式完成:

eval file rename -force $flist dest/

参考8.5+解决方案:8.5之前没有扩展运算符

例如:

set files [glob home/*.tcl]
eval file copy $files dest/

也就是说,如果可能的话,您应该升级到8.5+(出于许多原因),但建议在这种扩展场景中避免使用
[eval]
。或者,您可能希望通过显式循环$files进行扩展,但这也会降低性能

你试着那样做的时候发生了什么?成功了吗?没有,更新了描述。出于好奇,尝试使用“文件重命名”来移动,而不是“文件复制到复制”。没用,知道为什么吗?分类了。文件重命名的语法稍有不同如果您使用的是8.5之前的版本,那么您使用的是不受支持的Tcl版本。升级