这是我自己使用 sIEve 的经验。距离我提出这个问题已有 24 小时了。它提供了充足的、可视化的、非交互式的数据,例如“只读”。它确实提供了一种“复制”在各种“显示”网格中显示的数据的方法,在我的例子中是“使用中的显示”。然而,粘贴到文本文档中时产生的数据量远远超出了网格中实际显示的数据量,并且非常大量。
让我详细说明我的用例。 sIEve 本身并不表示“泄漏”,而是表示“孤儿”。要了解这在 sIEve 术语中意味着什么,请参阅这一页 http://home.orange.nl/jsrosman/sievehelp.htm.
使用 sIEve 浏览器访问我感兴趣的页面后,我使用“显示使用中”功能来显示包含大约 10 或 12 个字段的网格。通过单击标题可以对列数据进行排序,因此我能够对“孤立”列进行排序,然后选择指示“是”的行范围,然后单击“复制”
然而,我首先问这个问题是因为 Copy 似乎不起作用,或者 sIEve 崩溃了。我在大约三分之一或一半的时间里继续遇到这些问题,但仍然坚持不懈,最终能够将原始数据粘贴到文档中。
正如我所提到的,原始数据量非常丰富。所以到目前为止我开发的唯一的东西就是用于计算“记录”的正则表达式。每条记录都以如下行开头:
http://localhost:8086/yms_web/yardmanager.do (1 reference)
它始终指示引用的数量,因此这是我为在原始数据中查找这些行而开发的正则表达式;注意我为此使用 Cygwin:
$ egrep '\([0-9]+ reference[s]?\)' before_trailer_adjust_clicks.txt
http://localhost:8086/yms_web/yardmanager.do (5 references)
http://localhost:8086/yms_web/yardmanager.do (1 reference)
http://localhost:8086/yms_web/yardmanager.do (2 references)
正如您所看到的,正则表达式正确处理了复数引用的可能性;我还没有看到它处理有两位数引用的情况,但我相信它应该。
无论如何,通过将上述输出传递到 wc -l,您可以快速找出有多少行,因此在我的例子中,通过从“Orphan”等于“Yes”的网格中捕获数据,并通过连续的 HTTP 执行此操作请求,我能够看到孤儿数量如何增加,例如:
$ egrep '\([0-9]+ reference[s]?\)' before_trailer_adjust_clicks.txt | wc -l
3
$ egrep '\([0-9]+ reference[s]?\)' after_trailer_adjust_click.txt | wc -l
4
$ egrep '\([0-9]+ reference[s]?\)' after_create_rftask_click.txt | wc -l
4
$ egrep '\([0-9]+ reference[s]?\)' after_create_rftask_close.txt | wc -l
66
$ egrep '\([0-9]+ reference[s]?\)' after_trailer_adjust_close.txt | wc -l
163
当然,可以在 bash 脚本内调用egrep命令,循环遍历感兴趣的文件,但我还没有走那么远。
顺便说一下,这是一个 ExtJS 应用程序,我在他们的论坛上询问并得到了一些好的建议,并且能够大大减少孤儿的数量!
希望这对其他人有帮助,并且不确定为什么这个问题已被投票结束