我正在尝试使用Microsoft的Log Parser 2.2。我将Log Parser指向XML文件。我想从XML文件中获取某些信息,然后在查询中重用此信息。我在下面创建了一些伪代码:
GET UNIQUE *WINDOW_NAMES*
FOR EACH *WINDOW_NAME*
{
GET WINDOW_ATTRIBUTE_ONE;
GET WINDOW_ATTRIBUTE_TWO;
}
Log Parser 2.2可以实现吗?
XML文档的摘录:
<windows>
<window>
<name>
Window One
</name>
<visible>
Visible
</visible>
<stayontop>
True
</stayontop>
</window>
<window>
<name>
Window Two
</name>
<visible>
Visible
</visible>
<stayontop>
False
</stayontop>
</window>
<window>
<name>
Window Three
</name>
<visible>
Invisible
</visible>
<stayontop>
True
</stayontop>
</window>
</windows>
答案 0 :(得分:0)
您可以使用TPL输出格式根据第一个查询的结果生成(一组)查询,然后在输出文件上运行logparser。
答案 1 :(得分:0)
任何形式的SQL,特别是LogParser变种,都不适合循环。但是,如果你要做的只是获取数据元素,那么这个查询可能会完成这项任务:
LogParser -i:XML "file.xml#/windows/window"
这将输出一个包含字段name
,visible
和stayontop
的表格,以及每个“窗口”的一行。然后,您可以使用其中一个LogParser输出选项保存/输出此数据(有关详细信息,请参阅LogParser -h
或LogParser Windows帮助文件)。