cmdtree可以使大量的键入工作自动化,也可以帮助开发人员将一些常用的命令进行整理,降低入门难度。它有一个简单的文本格式,并通过.cmdtree [filename]的格式加载它,例如一个名为sos.txt的文件。
.cmdtree D:\sos.txt
格式定义很简单,每一行不是一个树节点就是一个有命令的叶子。如下:
windbg ANSI Command Tree 1.0 title {"标题"} body {"node1"} {"leaf11"} {"command"} {"leaf12"} {"command"} {"node2"} {"leaf21"} {"command"}
一个简单的sos.txt示例:
windbg ANSI Command Tree 1.0 title {"sos command tree"} body {".load"} {"2.0"} {".load C:\Windows\Microsoft.NET\Framework64\v2.0.50727\sos.dll"} {"4.0"} {".load C:\Windows\Microsoft.NET\Framework64\v4.0.30319\sos.dll"} {"!clrstack"} {"current"} {"!clrstack"} {"all"} {"~* e !clrstack"} {"all status"} {"~* e !clrstack -a"} {"!threads"} {"all"} {"!threads"} {"-live"} {"!threads -live"} {"!runaway"} {"!runaway"} {"!dumpheap"} {"-min"} {"!dumpheap -min 50"} {"-type"} {"!dumpheap -type System.Data.DataTable"} {"!da"} {"address"} {"!da 0000000140b83258"} {"-details"} {"!da -start 0 -length 30 -details 0000000140b83258"} {"!stoponexception"} {"-create"} {"!StopOnException -create System.IO.FileNotFoundException"} {"dump"} {"!dso"} {"!dumpstackobjects"} {"!bpmd"} {"!bpmd ConsoleApplication1.exe ConsoleApplication1.Program.Main"} {"!do"} {"!do 00000003ffe933d0"} {"!name2ee"} {"ConsoleApplication1.exe ConsoleApplication1.Program"} {"!dumpclass"} {"!dumpclass 000007fe96e1d9b0"}