- 论坛徽章:
- 2
|
本帖最后由 yinyuemi 于 2011-05-15 11:40 编辑
回复 6# dmidecode
试试下面的吧,我前面的回复不对,另外sed里的+不需要转义,
因为不管是awk还是sed, /foo1/,/foo2/的匹配的是第一个foo1到第一个foo2(对这点,以前的理解还是不到位啊),这也就是为什么你开始的代码无法打印出最个那行;- cat test
- abc
- 180.171.230.214 - - - [14/May/2011:20:28:10 +0800] "GET /promotion/gyp/20100602/maoyitong/index
- 180.171.230.215 - - - [14/May/2011:20:28:14 +0800] "GET /promotion/gyp/20100602/maoyitong/index
- .....
- .....
- .....
- 110.75.196.130 - - - [14/May/2011:20:40:45 +0800] "GET / HTTP/1.1" 200 1
- 159.140.25.218 - - - [14/May/2011:20:28:50 +0800] "http://xxx.com"
- 117.121.32.185 - - - [14/May/2011:20:28:50 +0800] "GET /homepage-market-conditio
- seg
- awk '/14\/May\/2011:20:28:10 \+0800/{p=1}/14\/May\/2011:20:28:50 \+0800/{print;p=0}p' test
- 180.171.230.214 - - - [14/May/2011:20:28:10 +0800] "GET /promotion/gyp/20100602/maoyitong/index
- 180.171.230.215 - - - [14/May/2011:20:28:14 +0800] "GET /promotion/gyp/20100602/maoyitong/index
- .....
- .....
- .....
- 110.75.196.130 - - - [14/May/2011:20:40:45 +0800] "GET / HTTP/1.1" 200 1
- 159.140.25.218 - - - [14/May/2011:20:28:50 +0800] "http://xxx.com"
- 117.121.32.185 - - - [14/May/2011:20:28:50 +0800] "GET /homepage-market-conditio
- sed -n '/4\/May\/2011:20:28:10 +0800/,/14\/May\/2011:20:28:50 +0800/{
- p
- /14\/May\/2011:20:28:50 +0800/{
- :a
- n
- /14\/May\/2011:20:28:50 +0800/p
- /14\/May\/2011:20:28:50 +0800$/! b
- ta
- }
- }' test
- 180.171.230.214 - - - [14/May/2011:20:28:10 +0800] "GET /promotion/gyp/20100602/maoyitong/index
- 180.171.230.215 - - - [14/May/2011:20:28:14 +0800] "GET /promotion/gyp/20100602/maoyitong/index
- .....
- .....
- .....
- 110.75.196.130 - - - [14/May/2011:20:40:45 +0800] "GET / HTTP/1.1" 200 1
- 159.140.25.218 - - - [14/May/2011:20:28:50 +0800] "http://xxx.com"
- 117.121.32.185 - - - [14/May/2011:20:28:50 +0800] "GET /homepage-market-conditio
复制代码 |
|