3/03/2009

vi 替换操作

最近遇到这样的问题,首先编译出现很多未定义的字符串的错误,于是想到,我可以把这些编译出现的错误重定向到一个文件中,然后把其中的字符串过滤出来,统一定义一下就行了,操作如下:

1) 交叉编译 app 工程,错误输出到 /tmp/k 文件中
make T=arm app > /tmp/k 2>&1

2) vi 打开该文件,用 substitute 替换以 ’ 字符开头到字符串结尾的串
:%s/\’ .\+$//g

3) 剔除重复行
sort -u /tmp/k > /tmp/good

疑问:
使用 sort -u 可以满足我的要求,但是它剔重后的结果已经重新排序了,有时候可能保持原来的顺序,怎么办呢?

没有评论: