shell - 请问如何用shell作隔行删除
请问如何用shell作隔行删除
2004-04-23 15:18 pm来自:Linux文档
现载:Www.8s8s.coM
地址:无名
我有一个文本文件,没隔一行就有一行乱码,如何用script作到隔行删除呢?
awk 'BEGIN{i=1}{if(i==1){print $0; i=0;}else{i=1}}' FILE >NEW_FILE
cat filename|awk '{if ( NR % 2==1)print $0}'
多谢啦!
如果要删的是奇数行呢? 就是删除1,3,5,7......行?
借版主的一用
cat filename|awk '{if ( NR % 2==0)print $0}'
不就可以了嘛,呵呵
再说一句,由于awk缺省打印$0,所以上述答案中的$0可以省略
删除奇数行
cat filename | awk '{if(NR % 2==0) print}'
删除偶数行
cat filename | awk '{if(NR % 2==1) print}'
省得好!如此我们才能共同提高.
还可以省略一些
删除奇数行
awk 'NR % 2==0' filename
删除偶数行
awk 'NR % 2==1' filename