是否有办法使用bash脚本(使用grep
,awk
,sed
,...等)搜索继承给定基类的类(或结构)?
我有一个跟注的电话:
./get_classes.sh 'CBaseClass' src/
修改1:
我已经尝试过了:
grep -r ':.*CBaseClass' src/
此解决方案有效,但仅当:
和CBaseClass
之间没有换行符时才有效。
这里的另一个问题是,当你在同一个头文件中有两个类都继承了CBaseClass时,grep将默认为一个贪婪的匹配(从:
到第二CBaseClass
}。
答案 0 :(得分:0)
你想要这样的东西:
find src/ \( -name \*.h -o -name \*.cpp -o -name \*.cxx \) -exec egrep '(class|struct).*:.*public.*CBaseClass'{} \; -print
在您致电get_classes.sh 'CBaseClass' src/