用于列出TCL中所有源文件的命令

时间:2012-04-10 09:51:17

标签: shell tcl

是否有命令列出TCL中的所有源文件?

例如 - 我在a.tcl文件中提取b.tclc.tcltest.tcl。是否有TCL命令来查看源文件?

1 个答案:

答案 0 :(得分:7)

不,但您可以覆盖source命令本身,以便在某处跟踪source个文件,如下所示:

rename source __real_source
proc source args {
    global sourced
    lappend sourced $args
    uplevel 1 [linsert $args 0 __real_source]
}

更新:扩展了Donal关于source命令脆弱性的评论,以及如何设置执行跟踪:

proc register_sourced {cmd args} {
  global sourced
  lappend sourced [lindex $cmd end]
}
trace add execution source leave register_sourced
相关问题