·*****grep:#过滤需要的内容(linux三剑客)。
                   -v:排除内容。eg:grep -v oldboy test.txt

·head: #头,头部。读取文件的前n行,默认前10行。
           -n 数字,可省略n。
·tail:#尾,尾部。读取文件的后n行,默认后10行。
         -n 数字,可省略n。

·提示:三剑客是grep,awk,sed,他们都有过滤字符串的功能。

        grep最擅长
        awk处理列擅长
        sed擅长删除,修改,替换,添加。

问题八:已知文件test.txt内容为:
test
liyao
oldboy
请给出打印test.txt内容时,不包含oldboy字符串的命令。

解答:

先用cat >>文件<<EOF...内容...EOF(前后2个EOF可以换成任何相同字母组合。)
[root@localhost data]# cd /
[root@localhost /]#
[root@localhost /]# cat >>test.txt<<EOF
> test
> liyao
> oldboy
> EOF
[root@localhost /]# cat test.txt
test
liyao
oldboy

·方法一:使用grep -v 命令:过滤排除某项并打印其他的项。
[root@localhost /]# grep -v oldboy test.txt
test
liyao

·方法二
[root@localhost /]# cat test.txt|grep -v oldboy (cat和管道方式,这个麻烦,不专业)
test
liyao

·grep直接用是过滤啥出来啥:
[root@localhost /]# grep oldboy test.txt
oldboy

·head命令:读取文件的前n行,默认前10行,n可省略:
[root@localhost /]# head -2 test.txt
test
liyao
[root@localhost /]# head -1 test.txt
test
[root@localhost /]# head -n 2 test.txt
test
liyao

·head命令:读取文件的前n行,默认前10行
[root@localhost /]# seq 20 >a.txt  (seq生成序列的命令)
[root@localhost /]# cat a.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
[root@localhost /]# head a.txt
1
2
3
4
5
6
7
8
9
10
[root@localhost /]#

·和head相对的命令是:tail:读取文件的后n行,默认后10行:
[root@localhost /]# tail a.txt
11
12
13
14
15
16
17
18
19
20
[root@localhost /]# tail -2 a.txt
19
20

·方法三:0基础可以忽略此法:
拓展:三剑客之一的sed删除方法,其实是把oldboy行删除,然后打印剩下的内容。
sed /oldboy/d test.txt
sed -e /^oldboy/d test.txt

[root@localhost /]# sed -e /^oldboy/d test.txt
test
liyao
[root@localhost /]# sed /oldboy/d test.txt
test
liyao
[root@localhost /]# sed -n /[^oldboy]/p test.txt
test
liyao

·方法四:0基础可以忽略此法:
[root@localhost /]# sed -n /[^oldboy]/p test.txt
test
liyao

·方法五:0基础可以忽略此法:
[root@localhost /]# awk /[^oldboy]/ test.txt
test
liyao

NO5 grep-head-tail命令的更多相关文章

  1. 22. 使用 awk / grep / head / tail 命令进行文本 / 日志分析 (/home/D/acc.log)

    一.awk     # 统计 a-read-file 接口 中,接口耗时 超过 0.007 秒的有多少个请求     D@Demon ~]$ awk '$7>0.007' acc.log | w ...

  2. Linux下grep、tail、wc、awk文件处理命令

    grep Linux系统中grep命令是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并匹配行打印出来. 命令语法: usage: grep [-abcDEFGHhIiJLlmnOoqRSsUV ...

  3. linux命令之------which命令/cp命令/Head及tail命令/grep命令/pwd命令/cd命令/df命令/mkdir命令/mount及umount命令/ls命令/history命令/ifconfig命令/ping命令/useradd命令/命令passwd/kill命令/su命令/clear命令/ssh命令/tar解压缩/远程拷贝scp

    which命令 1)    作用:搜索某个系统命令的位置. 2)    案例:查询vi命令路径:which vi cp命令 1)作用:用于复制文件或目录: 2)-a:此选项通常使用在复制目录时使用,它 ...

  4. grep命令和tail命令

    写在前面的话: 最近参与了新项目开发,周期短,与自己负责的主要业务对接.业务复杂,时常出现bug,然额对于菜鸟的我,更是无从下手.其实最好的帮助就是 学会查看日志,关键是之前查看日志真是太少了,菜鸟一 ...

  5. linux tail命令及其它日志查看命令的用法

    当日志文件存储日志很大时,我们就不能用vi直接进去查看日志,需要Linux的命令去完成我们的查看任务. Log位置: /var/log/message 系统启动后的信息和错误日志,是Red Hat L ...

  6. Linux head/tail命令详解

    head命令用于显示文件的开头的内容.在默认情况下,head命令显示文件的头10行内容. tail命令用于显示文件的结尾的内容.在默认情况下,taild命令显示文件的后10行内容. head常见命令参 ...

  7. tail命令详解

    搜索 纠正错误  添加实例 tail 在屏幕上显示指定文件的末尾若干行 补充说明 tail命令 用于输入文件中的尾部内容.tail命令默认在屏幕上显示指定文件的末尾10行.如果给定的文件不止一个,则在 ...

  8. Linux命令详解之—tail命令

    tail命令也是一个非常常用的文件查看类的命令,今天就为大家介绍下Linux tail命令的用法. 更多Linux命令详情请看:Linux命令速查手册 Linux tail命令主要用来从指定点开始将文 ...

  9. 每天一个 Linux 命令(15):tail 命令

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

  10. Linux head和tail命令

    200 ? "200px" : this.width)!important;} --> 介绍 head和tail是一组想对应的命令,默认分别显示文件的开头和末尾10行记录. ...

随机推荐

  1. 李德胜系列——李德胜和CPC人的初心

    很久很久以前,有三条恶龙盘踞着村庄,恶龙们及其爪牙对村民敲骨吸髓,逼着村民卖儿鬻女.苦不堪言.但是村民们却对此压迫习以为常,逆来顺受. 后来,一个书生来到了这个村庄,告诉村民,不许跪,也没有人值得他们 ...

  2. spm_hrf

    a=spm_hrf(0.72); n1=MOTOR_taskdesign(1,:);cn1=conv(n1,a);plot(cn1); block design hrf

  3. 61二叉搜索树的第k个结点

    题目描述 给定一颗二叉搜索树,请找出其中的第k大的结点.例如, 5 / \ 3 7 /\ /\ 2 4 6 8 中,按结点数值大小顺序第三个结点的值为4. 思路:二叉搜索树的中序遍历是递增的序列,使用 ...

  4. redhat 7.6 ssh 服务配置

    安装ssh yum install openssh 查看端口 netstat -ntpl netstat -ntpl | grep :22 启动和关闭 service sshd restart/sta ...

  5. LTE 网元功能

    E-NodeB : 无线资源管理,无线承载控制.无线接入控制.连接移动性控制.UE的上下行动态资源分配 IP头压缩及用户数据流加密 UE连接期间选择MME 路由用户面数据至S-GW 寻呼消息的组织和发 ...

  6. .Net后台实现微信小程序支付

    最近一直再研究微信支付和支付宝支付,官方支付文档中一直在讲与第三方支付打交道的原理,却没有介绍我们自己项目中的APP与后台该怎么交互(哈哈,人家也没必要介绍这一块).拜读了官方文档和前辈们的佳作,自己 ...

  7. Py西游攻关之基础数据类型(五)-集合

    Py西游攻关之基础数据类型 - Yuan先生 https://www.cnblogs.com/yuanchenqi/articles/5782764.html 八 集合(set) 集合是一个无序的,不 ...

  8. 认识iOS系统架构

    关于本文: 文章主要介绍iOS系统架构中的四层结构的内容.常用的框架.大致的功能,然后对iOS开发人员的发展提出自己的一些拙见. 一.iOS系统是基于UNIX系统,所有从系统稳定性上来说的确比其他操作 ...

  9. keyup事件、keydown事件和input事件的区别

    keydown.keyup 属于键盘事件,input 属于文本事件 详细说明: keydown:当用户按下键盘上的任意按键时触发,如果按住不放,会重复触发此事件. keyup:当用户释放键盘上的按键时 ...

  10. session存取时 getOutputStream()和getWriter()问题

    情况1: 在使用httpResponse的getWriter()会写json是出现 getWriter() has already been called for this response,经我查看 ...