闲来无事,刚好需要一个批量修改特定文件的后缀名的需求,所以就写下来了。 proc PrintList {list_arg} { foreach value $list_arg { puts $value; } puts [llength $list_arg]; } proc CollectAllFiles {path_name} { set file_list {}; foreach temp_file [concat [glob -nocomplain ${path_name}/*] [glob -nocomplain -type hidden ${path_name}/*]] { if {[file isdirectory $temp_file] == 0} { set file_list [concat $file_list $temp_file]; } else { set file_list [concat $file_list [CollectAllFiles $temp_file]]; } } return $file_list; } proc ModifyFileExtension {path_name old_ext new_ext} { foreach temp_file [CollectAllFiles $path_name] { if {[file extension $temp_file] == $old_ext} { file rename -force $temp_file [file rootname $temp_file]$new_ext } } } ModifyFileExtension d:/test_file .cxx .cpp PrintList [CollectAllFiles d:/test_file] 偷懒使用了之前写的两个小函数,测试一下,可以使用也就算了。。。感觉代码还是多了。。。 发现最近。。。懒了很多。。。。惰性发作啊!!!