########################################
#proc tcl_dir : show all file in current path
#parameter 
#     path : the path you want to look
#
flag :
#
1--only show curent path file list # 2--show curent path file list include path # 3--show curent path file list with its subdirectory # 4--show curent path file list with its subdirectory include path # result : result will be setted "" and return new result # eg: # return [tcl_dir [file dirname [info script]] 1 {}] #author : li ######################################## proc tcl_dir {path flag result} { # puts "\'[pwd]\'" if {"NULL"!=$path && ""!=$path} { #catach excption or error if {[catch {cd $path} err]} { return $err } set path {} } foreach fileList [glob -nocomplain *] { # switch $flag {a {} b {}} switch $flag { \ 1 { puts $fileList lappend result $fileList } \ 2 { if {[file isdirectory $fileList]} { #add subdirectory's result to variable result lappend result [tcl_dir $fileList $flag {}] cd .. } puts $fileList lappend result $fileList } \ 3 { puts [file join [pwd] $fileList] lappend result [file join [pwd] $fileList] } \ 4 { if {[file isdirectory $fileList]} { lappend result "[tcl_dir $fileList $flag {}]" cd .. } puts [file join [pwd] $fileList] lappend result [file join [pwd] $fileList] } \ } } return $result }

 

posted on 2016-03-20 19:27  le.li  阅读(4018)  评论(0编辑  收藏  举报