转:linux命令: tail ,head 显示文件某行内容 与sed在线编辑器

linux 如何显示一个文件的某几行(中间几行)

转:http://www.cnblogs.com/xianghang123/archive/2011/08/03/2125977.html

http://www.chinabin.cn/language/shell/2150.html

 

【一】从第3000行开始,显示1000行。即显示3000~3999行

cat filename | tail -n +3000 | head -n 1000

 

【二】显示1000行到3000行

cat filename| head -n 3000 | tail -n +1000

 

*注意两种方法的顺序

 

分解:

    tail -n 1000:显示最后1000行

    tail -n +1000:从1000行开始显示,显示1000行以后的

    head -n 1000:显示前面1000行

tail和 head 用法比较简单;

tail   -n  行数值  文件名;

 

【三】用sed命令

 sed -n '5,10p' filename 这样你就可以只查看文件的第5行到第10行。 这里的sed表示string edit流编辑器,p表示print打印。

sed是一种在线编辑器,它一次处理一行内容。sed全称是stream edit,流处理器。这个概念是相对于vi等交互式文本处理器而言的。基本上使用它进行每一行的处理。在使用sed的过程中,我们使用最多的,或者说sed提供最多的是三个功能。字符串匹配替换、删除行、打印命令和插入文本等命令的组合。下面是总结的比较常用、简单的用法。

 

删除d:

地址是逗号分隔的,那么需要处理的地址是这两行之间的范围(包括这两行在内)。范围可以用数字、正则表达式、或二者的组合表示。例如:

 

sed '2,5d' datafile
#删除第二到第五行
sed '/My/,/You/d' datafile
#删除包含"My"的行到包含"You"的行之间的行
sed '/My/,10d' datafile
#删除包含"My"的行到第十行的内容

 

替换每一行的第一个出现的abc为def

替换所有的abc为def

shell脚本中的用法,注意是双引号而不是单引号

删除当前目录中文件名中包含特殊字符的文件,如 +,{,;,\等

当然,也可以使用find语句,如下:

文件改名

 
 
 
 
 
 
 
 
 
 
posted @ 2014-01-08 12:20  无脚的鸟  阅读(1691)  评论(0编辑  收藏  举报