language: go1.22.5 windows/amd64
IDE:Goland
lib:
OS:Windows
共两种搜索模式:
- 原文本搜索:搜索的文件为xml格式的文本文件,且搜索内容包含注释
- 搜索速度:单次搜索与第二种相比较慢
- 处理后的文本搜索:处理后的文本仅包含xml文件中code标签部分,且可选择是否带注释
- 搜索速度:最开始需要1min时间处理,之后单次搜索与第一种相比较快
一次搜索的大概流程(以搜索关键字hs_strcpy
为例)
原文本搜索意味着:搜索的文件为xml格式的文本文件,且搜索内容包含注释
此时看到弹窗
点击确定,出现下面窗口,可点击Browser浏览并输入本地的==业务逻辑==和==原子==文件所在目录
例如:
输入完成后点击OK按钮,等待0-3秒结果会展示出来
业务逻辑和原子两大文件中有文件的增删改动时(文件内容改动不影响),需要点击重新加载按钮,然后再点击Run运行,在这之后如果没有增删改动则不需要重复点击
处理后的文本仅包含xml文件中code标签部分,且可选择是否带注释
点击生成文件之后会显示进度条
完成后,点击Run,得到如下结果
业务逻辑和原子两大文件中有文件的增删改动时(文件内容改动不影响),需要点击重新加载按钮,然后再点击Run运行,在这之后如果没有增删改动则不需要重复点击
点击后出现设置界面,再次点击生成文件即可
双击搜索结果会打开调用链的最后一个节点所对应的文件
对于非原文本搜索可选择打开解析前或者解析后的文件
对于非去重的结果可能会出现以下情况,即LS调用的LF会在结果中再展示一行,去重之后图中第二个方框中的结果则不会显示
将所有调用链结果保存到文本中
结果的调用链的最后一个节点会展示匹配到的字符串,每个字符串对应目标所在行的行号
搜索结果报错not found
说明该调用链的最后一个节点文件在业务逻辑和原子这两个目录下没有找到,(很大原因是勾选了原文本搜索,导致搜索到了很多没有去注释的代码)