« shell 折腾之 ${!varname} 实现级联调用 | Main | 通过循环结构从数据库生成 nagios 配置 »
November 27, 2006
折腾 C 指针 完成 log 过滤 思路清晰是王道
版权声明:可以任意转载,转载时请务必以超链接形式标明文章原始出处和作者信息及本声明。 https://windtear.net/archives/2006/11/27/001147.html http://windtear.net/archives/2006/11/27/001147.html 折腾 C 指针 完成 log 过滤 思路清晰是王道 目的: Log 过滤 思路: 一次读一段 如8192字节 然后两个指针移动 基本是后面冲掉前面 *ptri, *ptro 实现: 初始化之后(两个指针都指向开头) 进入 for 循环 碰到希望的 替换 *ptro = '\t'; 或 '\n' 或 干脆忽略掉 可以匹配长度 可以匹配后缀 可以做一切想要做的事 如果想过滤掉一行 直接把 ptro 指向先前设的"本行开头位置" 重新覆盖 然后把"本行开头位置" 指向当前ptro的位置 为了进入下一循环 再不 ptri 左移一位 for 循环结束之后 判断 optr 是不是指向的还是最开始 如果不是最开始 则成功过滤有有效数据 设置终结 *ptro++ = '\0'; 返回调用时传过来的指针即可 |
Posted by windtear at November 27, 2006 11:46 PM