Chinaunix
标题:
sed 文件奇数行显示疑问
[打印本页]
作者:
computerzanz
时间:
2010-09-22 16:12
标题:
sed 文件奇数行显示疑问
问题1:最后一行是奇数行如何显示?
[dut@ubuntu-desktop ~/sed]$cat -n boot.ini
1 [boot loader]
2 timeout=30
3 default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS
4 [operating systems]
5 multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Home Edition" /noexecute=optin /fastdetect
复制代码
运行命令
[dut@ubuntu-desktop ~/sed]$sed -n -e 'N;P' boot.ini
[boot loader]
default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS
复制代码
问题2:删除多行空行,只保留1行,如下脚本为何不行?
[dut@ubuntu-desktop ~/sed]$cat -n datafile
1 [boot loader]
2
3 timeout=30
4
5
6 default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS
7
8
9
10 [operating systems]
11
12 multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Home Edition" /noexecute=optin /fastdetect
13 another line
复制代码
[dut@ubuntu-desktop ~/sed]$sed -e '/^$/{
> N
> /^$/D
> }' datafile
[boot loader]
timeout=30
default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS
[operating systems]
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Home Edition" /noexecute=optin /fastdetect
another line
复制代码
[dut@ubuntu-desktop ~/sed]$sed --version
GNU sed 版本 4.2.1
复制代码
希望帮助
作者:
Shell_HAT
时间:
2010-09-22 16:15
sed -n 'p;n' urfile
复制代码
作者:
Shell_HAT
时间:
2010-09-22 16:20
代码从哪里抄的?少了点东西:
sed '/^$/{N;/^\n$/D}' urfile
复制代码
作者:
computerzanz
时间:
2010-09-22 16:43
代码从哪里抄的?少了点东西:
Shell_HAT 发表于 2010-09-22 16:20
[dut@ubuntu-desktop ~/sed]$sed -e '/^$/{N;/^\n$/D}' datafile
[boot loader]
timeout=30
default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS
[operating systems]
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Home Edition" /noexecute=optin /fastdetect
another line
复制代码
还不好使....在sed+手册上看到的
作者:
Shell_HAT
时间:
2010-09-22 16:49
回复
4#
computerzanz
#cat urfile
1
2
3
#sed '/^$/{N;/^\n$/D}' urfile
1
2
3
#sed --version
GNU sed version 4.1.5
作者:
computerzanz
时间:
2010-09-22 16:53
er,谢谢
作者:
dragon23452345
时间:
2010-09-26 18:04
提示:
作者被禁止或删除 内容自动屏蔽
欢迎光临 Chinaunix (http://bbs.chinaunix.net/)
Powered by Discuz! X3.2