我想搜索一下在我的硬盘上搜索名为hw.exe的文件的代码。
我找到了以下代码:
set files [glob hw.exe]
set sofar -1
foreach f $files {
set size [file size $f]
if {$size > $sofar} {
set sofar $size
set name $f
}
}
puts "Biggest files is $name at $sofar bytes"
有任何人有想法纠正这个问题吗?或者有功能吗?
答案 0 :(得分:2)
如果您编写了正确的过滤器,Tcllib中的fileutil package具有您正在寻找的功能。然后可以在返回的列表上查找最大的文件,该列表应该远小于驱动器上所有文件的列表!
package require fileutil
proc filter {name} {
return [string match hw.exe $name]
}
set hwlist [fileutil::find C:/ filter]
set sofar -1
set name ""
foreach f $hwlist {
set size [file size $f]
if {$size > $sofar} {
set name $f
set sofar $size
}
}
puts "Found $name of size $sofar"