打印文件中特定的某行到某行之间的内容

回复 收藏
sed
例如:有个文件test的内容如下:
ert
fff
**
[abcfd]
123
324
444
[rty]
**
fgfgf
怎么能截取
[abcfd]
123
324
444
[rty]
这一部分出来呢?

答案: sed -n '/\[abcfd\]/,/\[rty\]/p' test
2011-03-24 09:53 5 条评论 举报
已邀请:
0

古峰

赞同来自:

和第1行到第5行打印差不多 ,这是用字符串
0

齐天大圣

赞同来自:

get!
0

wyatt88

赞同来自:

{:5_121:}
0

赞同来自:

get
0

gjc159357

赞同来自:

收了
0

sincethen

赞同来自:

sed -n '/abcfd/,/rty/p' test
可以直接输字符串
0

zaishuiyixia

赞同来自:

get
0

大漠之烟

赞同来自:

sed -n '/^\[/,/^\[/p' test.txt
0

大漠之烟

赞同来自:

sed -n '/^\[/,/^\[/s/123/88888888888/p' test.txt
0

杭州小白

赞同来自:

get
0

HwangChen

赞同来自:

get
0

wangzai

赞同来自:

给了思路,学习了
0

迷城

赞同来自:

有点看不懂
0

迷城

赞同来自:

有点看不懂
1

lyhabc

赞同来自: 傲立

sed -n '/03\/Mar\/2016:02:52/,/03\/Mar\/2016:03:03:20/'p  /usr/local/nginx/logs/cn.log |awk '{print $1}'|sort|uniq -c|sort -rn

查日志的时候非常有用
0

469327849

赞同来自:

lyhabc 发表于 2016-3-16 15:45
sed -n '/03\/Mar\/2016:02:52/,/03\/Mar\/2016:03:03:20/'p  /usr/local/nginx/logs/cn.log |awk '{print  ...

get 谢谢学长分享
0

tytywu

赞同来自:

这个不是简单的打印第4行到第8行吗?没看明白
0

LL-TD

赞同来自:

[abcfd\]/,/\[rty\]不懂括号里面怎么还要用到\
0

善思致用

赞同来自:

大漠之烟 发表于 2015-9-22 16:19
sed -n '/^\[/,/^\[/p' test.txt

为啥用-r选项sed -n -r '/^[/,/^[/'p test.txt不行呢,-r不是可以不用加\脱义的吗?
0

善思致用

赞同来自:

为啥sed -n -r '/[abcfd]/,/[rty]/p' test这样不行呢,-r选项不是可以脱义吗?
0

zh_414

赞同来自:

学习了
0

liaochao1991

赞同来自:

中间/,/代表什么呢
0

标哥

赞同来自:

不懂什么意思,这个视频里面没有这种啊,请阿铭老师,解释一下吧.
0

15077302888

赞同来自:

学习了
0

shuaizy_2016

赞同来自:

善思致用 发表于 2016-6-17 15:47
为啥sed -n -r '/[abcfd]/,/[rty]/p' test这样不行呢,-r选项不是可以脱义吗?

同问 为什么-r不可以呢 必须要用脱译符号
0

ouyang

赞同来自:

sed -n -r '/[abcfd]/,/[rty]/p' test 或许这样看起来好看点
0

qwlp19910807

赞同来自:

学习了 //,//的截取范围的行的用法
0

。。。

赞同来自:

收了
0

youna790049213

赞同来自:

mark
0

多面体

赞同来自:

学习中

0

hammel

赞同来自:

i_f01.gif

0

Youcan

赞同来自:

get

0

左左

赞同来自:

对啊。为什么-r不可以。

0

司佳祥

赞同来自:

学习中

0

灵度泪 - -

赞同来自:

学习了!

0

u92368407

赞同来自:

-r, --regexp-extended

              use extended regular expressions in the script.

-r只是支持扩展的正则表达式

回复帖子,请先登录注册

退出全屏模式 全屏模式 回复
评分
可选评分理由: