是否有命令列出TCL中的所有源文件?
例如 - 我在a.tcl
文件中提取b.tcl
,c.tcl
,test.tcl
。是否有TCL命令来查看源文件?
答案 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