awk生成代码
来源:互联网 发布:软件开发控制程序 编辑:程序博客网 时间:2024/06/07 08:42
需求:在一个结构体中添加一个字段,结构体数组较大,且数十个文件中都有类似结构,所以考虑用脚本处理
假设结构体如下:
{
MAKE_ZOOM_VALUE(0x3ffb,XXX_OZOOM_L16),
0,
0x1990,
0x0398,
0x0298,
},
新添加数据
80
想法:考虑到每个结构体的第一项的最后几个字符都一样(XXX_OZOOM_L16),),以此为契机,用变量把两套数据关联起来。
具体做法:
1,把要添加的数据置为变量,awk脚本:awk '{print "NUM" ++i "=0x0" $0*10}' from1.txt > to1.sh
执行后数据对应的行变为NUM1=0x0800并将数据保存在to1.sh里。
2,awk '{print $0} /XXX_OZOOM_L16/{print "$NUM" ++i}' zoomtble1.txt > zoomtble2.txt (zoomtble1.txt中包含结构体数组)
处理之后结构体变为
{
MAKE_ZOOM_VALUE(0x3ffb,XXX_OZOOM_L16),
$NUMi
0,
0x1990,
0x0398,
0x0298,
},
将处理后的机构数组移到to1.sh中,cat << EOF,然后./to1.sh>result.c
result.c中的代码即为添加字段之后的代码。
初学awk及shell,如果有不准确的地方,欢迎指出。
同时欢迎更好的解决方法。
0 0
- awk生成代码
- awk 代码收集
- 利用awk自动生成DTO
- awk之生成shell数组
- 生成AWK快照的方法
- 使用awk合并文件--生成report
- awk读取txt生成mysql插入语句
- 生成代码
- sed/awk与unix命令等价代码
- sed/awk与unix命令等价代码
- awk
- awk
- AWK
- awk
- AWK
- awk
- awk
- AWK
- Linux下timer的使用介绍,例子
- Android系统权限和root权限
- A Newbie's Guide on Revive AdServer (OpenX Source) 3.0.2 setup
- cocos2d-x渲染框架
- 构造函数、拷贝构造函数和析构函数的的调用时刻及调用顺序
- awk生成代码
- 在linux环境下安装Memcached及其简单使用+相关文档
- 多语言本地化
- 第一篇 微信商城 开发前的准备工作
- node性能提升,有关Cluset模块
- DMA读写
- 自定义xcode5.0模板
- Java 各种运行内存问题解决
- SQL语句之alter database/system/session