proc listTree {rootdir_} {
    set currentnodes [glob -nocomplain -directory $rootdir_ -type d *]
    if {[llength $currentnodes] <= 0} { 
 # aktualny katalog jest lisciem i posiada pliki to wypisz te pliki
  set fileslastnode [glob -nocomplain -directory $rootdir_ -type f *]
  if {[llength $fileslastnode] > 0} {
   foreach eachfile $fileslastnode {
    puts "$eachfile"
   }
  }
  return
    } else {
     # Rekursywnie przegladaj wszystkie katalogi
   foreach node $currentnodes {
   listTree $node
   }
 }
}

Add a code snippet to your website: www.paste.org