解决方法
尝试以下:
cscope -R -L -2 ".*" | awk -F ' ' '{print $2 "#" $1}' | sort | uniq
>命令cscope -R -L -2“.*”将输出调用的函数
任何功能(见下面的选项说明).对于找到的每个参考,cscope输出由文件名,功能名称,行号和行文本组成的行,以空格分隔.
>使用awk提取函数名$2,文件名$1由#分隔.如果需要其他输出字段或分隔符,请更改$2,$1和分隔符#.
>排序输出排序.
>使用uniq获取唯一的项目.
cscope选项(见http://cscope.sourceforge.net/cscope_man_page.html):
> -R重复源文件的子目录.
> -L使用时,使用线性输出进行单次搜索
-num模式选项.
> -2“.*”转到输入字段num(这里基于0的字段2)并找到
模式(这里.*为所有).您可以在cscope的屏幕模式下看到输入字段.这可能会因您使用的版本而异. debian版本15.8a的字段是:
> 0:找到这个C符号:> 1:找到这个全局定义:> 2:查找此函数调用的函数:> 3:查找调用此函数的函数:> 4:找到这个文本字符串:> 5:更改此文本字符串:> 6:找到这个egrep模式:> 7:查找此文件:> 8:查找文件#include这个文件: