输入路径列表即可自动完成缩进对齐,前提当然是语法能对的情况.

 
################################################################################
# 脚本编号:     TC_Funtion
# 编写人员:     何佳杰
# 编写日期:     2010.04.19
# 修改日期:     2010.04.19
# 脚本版本:    
# 用例名称:     对不规范的脚本进行检查并修改.
# 测试描述:    对缩进不整齐的可以调整为整齐.                        
###############################################################################
proc Format_New {fileList} {
  foreach    fileId $fileList {
    set oId [open $fileId r]
    set strList ""
    while {[eof $oId] != 1} {
      lappend strList [gets $oId]
      #puts "$strList"
    }
    close $oId
    set wId [open $fileId w]

    set flag 0
    foreach    line $strList {
      set line [string trim $line]
      set left [regexp -all "\{" $line]
      set right [regexp -all "\}" $line]
      puts "left: $left        right:$right"
      set num [expr $left - $right]
      if {$num == 1} {
        set space [string repeat " " [expr $flag * 3]]
        append space $line
        puts $wId $space
        puts $line
        incr flag 1
      } elseif {$num == -1} {
        incr flag -1
        set space [string repeat " " [expr $flag * 3]]
        append space $line
        puts $wId $space
        puts $line

      } else {
        set space [string repeat " " [expr $flag *3]]
        append space $line
        puts $wId $space
        puts $space
      }
      puts "flag:    $flag"

    }
    close $wId
  }
}

Format_New "E:/dynamip/tes.tcl"