Linux Tips: 批量修改C语言工程的函数命名风格(纯Shell方法)

  • 通过ctags解析工程目录中所有函数
# 遍历所有C文件并将解析出的函数名放在funcs文件中
find ./ -name "*.[ch]" -exec ctags -x --c-types=f {} ; | awk '{print $1}' >> funcs
  • 通过sed进行函数命名风格转换,并替换所有C文件
# 遍历前面生成的funcs文件,转换、替换
while read func
> do
> new_func=`echo $func | sed 's/_(.)/u1/g'`
> find ./ -name "*.[ch]" -exec sed -i "s/$func/$new_func/g" {} ;
> done < funcs
  • 实例展示
  1. 转换前工程目录状况和函数定义
    image

  2. 解析所有函数
    image

  3. 执行转换,再次查看函数定义
    image

原文地址:https://www.cnblogs.com/tp1226/p/15467419.html