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

 
1
sed-e's/abc/def/'file.name

替换所有的abc为def

 
1
sed-e's/abc/def/g'file.name

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

 
1
sed-e"s/$old_pattern/$new_pattern/g"file.name

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

 
1
2
3
4
forfilename in*
do
    badname=!echo"$filename"|sed-n/[\+\{\;\"\\\=\?\~\(\)\<\>\&\*\|\$\]/p!
done

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

 
1
find.-name'*[+{;"\\=?~()<>&*|$ ]*'-exec rm-f'{}'\;

文件改名

 
 
 
 
 
 
 
 
 
 

转:linux命令: tail ,head 显示文件某行内容 与sed在线编辑器的更多相关文章

  1. linux命令截取文件最后n行(所有命令)

    linux命令截取文件最后n行(所有命令) tail -n a.txt > b.txt 联想:系统信息 arch 显示机器的处理器架构(1) uname -m 显示机器的处理器架构(2) una ...

  2. PHP实现linux命令tail -f

    PHP实现linux命令tail -f 今天突然想到之前有人问过我的一个问题,如何通过PHP实现linux中的命令tail -f,这里就来分析实现下. 这个想一想也挺简单,通过一个循环检测文件,看文件 ...

  3. 利用Linux命令行进行文本按行去重并按重复次数排序

    最近杂事太多,正事进展缓慢.Fighting! linux命令行提供了非常强大的文本处理功能,组合利用linux命令能实现好多强大的功能.本文这里举例说明如何利用Linux命令行进行文本按行去重并按重 ...

  4. 菜鸟学Linux命令:tail命令 查看日志

    tail 命令用于显示指定文件末尾内容,不指定文件时,作为输入信息进行处理. tail命令常用来查看日志文件.使用tail命令的-f选项可以方便的查阅正在改变的日志文件,tail -f filenam ...

  5. Linux 命令 - tail: 打印文件的结尾部分

    命令格式 tail [OPTION]... [FILE]... 命令参数 -c, --bytes=[-]K 显示每个文件的后 K 字节内容.-n +K 则表示从第 K 字节开始输出. -f, --fo ...

  6. Linux 命令 - wc: 统计文件的行数、字数和字节数

    命令格式 wc [OPTION]... [FILE]... 命令格式 -c, --bytes 打印字节数. -m, --chars 打印字符数. -l, --lines 打印行数. -L, --max ...

  7. 每天学点linux命令--tail,cut,sort,uniq

    tail 命令从指定点开始将文件写到标准输出.使用tail命令的-f选项可以方便的查阅正在改变的日志文件,tail -f filename会把filename里最尾部的内容显示在屏幕上,并且不但刷新, ...

  8. linux命令读取文件中特定行

    1.如果你只想看文件的前5行,可以使用head命令, 如: head -5 /etc/passwd 2.如果你想查看文件的后10行,可以使用tail命令, 如: tail -10 /etc/passw ...

  9. Linux命令: ls -l显示文件和目录的详细资料

    ls -l 显示文件和目录的详细资料

随机推荐

  1. 向日期添加指定的时间间隔(mysql)

    DATE_ADD( 原始日期, INTERVAL 要加的年数 YEAR) DATE_ADD( 原始日期, INTERVAL 要加的月份 MONTH) DATE_ADD( 原始日期, INTERVAL ...

  2. jenkins+jacoco+ant自动化代码和应用服务代码分离场景获取远程服务的覆盖率

    前提 自动化代码和应用服务代码分离.jenkins和tomcat服务器分离 思想 1.在tomcat启动javaagent监听. 2.运用其他job_B已部署的应用服务代码 3.拉取自动化代码,开始测 ...

  3. Open vSwitch for CentOS

    原文发表于cu:2016-06-02 本文属于重发,ovs当前的安装方式可能略有不同. 参考文档: 官方文档: http://openvswitch.org/support/dist-docs-2.5 ...

  4. 【Linux 运维】 date的使用

    date的使用 一.常用时间格式 #年.月.日 四位年大写,其余小写 [root@localhost ~]# date +%Y #长格式显示四位数年 [root@localhost ~]# date ...

  5. Tree - XGBoost with parameter description

    In the previous post, we talk about a very popular Boosting algorithm - Gradient Boosting Decision T ...

  6. 所见即所得:七大无需编程的DIY开发工具

    现如今,各种DIY开发工具不断的出现,使得企业和个人在短短几分钟内就能完成应用的创建和发布,大大节省了在时间和资金上的投入.此外,DIY工具的出现,也帮助广大不具备专业知识和技术的“移动开发粉”创建自 ...

  7. 关于XML文档操作类

    using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.X ...

  8. Farm Irrigation ZOJ 2412(DFS连通图)

    Benny has a spacious farm land to irrigate. The farm land is a rectangle, and is divided into a lot ...

  9. 按照Right-BICEP要求设计四则运算3程序的单元测试用例

    按照Right-BICEP要求: Right——结果是否正确? B——是否所有的边界条件都是正确的? I——能查一下反响关联吗? C——能用其它手段交叉检查一下吗? E——你是否可以强制错误条件发生? ...

  10. DP--HDU 1003(最大子串和)

    问题描述:          给定整数A1, A2,--AN (可能有负数),求I到j的最大值. 例如:          -2, 11, -4, 13, -5, -2时答案为20 对于这个问题的算法 ...