对于awk逗号的问题,我昨天看的一本书有提过:

《Linux就是这个范儿》挺好的书,大家可以看看~~~~

测试过,总结如下(不知道总结有没有错,欢迎大家吐槽,欢迎大家吐槽,吐槽,吐槽........)

    前期准备工作

(i)b.txt文本内容:

(ii)逗号表达式形式: “字符串s1,字符串s2”

(iii)n1: s1所在行;        n2:s2所在行

############################################

注意:无论什么情况,都是优先匹配s1!!!     ——————防色盲系列

(非常符合人类从左到右看东西的习惯~总不会奇葩到从右往左看吧~~)

主要有 4 种情况

情况一、匹配s1,匹配s2

(0)if (n1==n2)   仅打印匹配那行——》 n1

(1)if (n1 < n2),打印 [n1,n2] 行.       命令:awk '/78/,/21/' b.txt

(2)if (n1 > n2),打印 [n1,最后一行]  命令:awk '/21/,/78/' b.txt

情况二、匹配s1,不匹配s2

结果同一的(2),打印 [n1,最后一行]

情况三、不匹配s1,匹配s2

匹配不上,什么都不打印

情况四、不匹配s1,不匹配s2

匹配不上,什么都不打印

###########################

那么前面提到的 awk '/Jan/,/nov/'b.txt 就很好理解了,就是情况一的(2)

因为优先匹配n1(Jan所在行),而 nov 虽然也匹配了,但是由于n2(nov 所在行)在 n1 的前面,所以打印的时候就是打印 n1(Jan那行)到文本结尾

图是这样的:

我当时是这样问的:

awk '/Jan/,/nov/'b.txt  逗号表示什么意思,第一行打印出来好理解,因为有Jan,但后3行就不懂 了,明明都没有Jan 或者 nov,不知道它是以什么标准来匹配的?

awk '/Jan/;/nov/'b.txt  分号这个就好理解,就是或者的意思,把有Jan 或者 nov的行都打印出来

这条题目的链接:

http://www.cnblogs.com/emanlee/p/3327576.html

第 1 大题的第 2 行

关于awk的逗号问题的更多相关文章

  1. Sed Awk 日常使用总结

    Sed命令语法sed [option] {sed-commands}{input-file}sed首先从input-file中读取第一行,然后执行所有的sed-commands:再读取第二行,执行所有 ...

  2. linux可以这样玩 之 杂乱无章的随笔(不定期更新)

    文章目录 快速重命名 vim的进化 vim高亮当前行 vim列编辑 vim块编辑 vim行编辑 vim 中替换内容 vim保留当前已经编辑的内容,切换到其他用户继续编辑 修改服务的进程限制 CentO ...

  3. awk实现 文本内的换行符 为分隔符,输出变为逗号

    awk实现 文本内的换行符 为分隔符,输出变为逗号 [liujianzuo@ow2 scripts]$ awk -F $ '{print $0}' ldap_member.log ruanshujun ...

  4. sed awk 要获得每行的最后一个逗号后边的内容

    获得每行的最后一个逗号后边的内容.例如:KIAA1967 KIAA1967, xxxxSECIS biding proin 2-like, SECISBP2L, yyyy 1234ankyrin re ...

  5. awk sed tr替换换行符为逗号,并合并为一行

    在群里看到的.记录以备用.  sed 帮助命令:http://man.linuxde.net/sed 文件里有如下行,我想将每行的回车符替换为逗号,并将所有行合并到一行,用awk或sed怎么写啊TOP ...

  6. awk命令简介

    awk是一个强大的文本分析工具,相对于grep的查找,sed的编辑,awk在其对数据分析并生成报告时,显得尤为强大.简单来说awk就是把文件逐行的读入,以空格为默认分隔符将每行切片,切开的部分再进行各 ...

  7. awk使用说明

    原文地址:http://www.cnblogs.com/verrion/p/awk_usage.html Awk使用说明 运维必须掌握的三剑客工具:grep(文件内容过滤器),sed(数据流处理器), ...

  8. awk应用

    h3 { color: rgb(255, 255, 255); background-color: rgb(30,144,255); padding: 3px; margin: 10px 0px } ...

  9. 基本shell编程【3】- 常用的工具awk\sed\sort\uniq\od

    awk awk是个很好用的东西,大量使用在linux系统分析的结果展示处理上.并且可以使用管道, input | awk ''  | output 1.首先要知道形式 awk 'command' fi ...

随机推荐

  1. Mongodb学习笔记三(Mongodb索引操作及性能测试)

    第三章 索引操作及性能测试 索引在大数据下的重要性就不多说了 下面测试中用到了mongodb的一个客户端工具Robomongo,大家可以在网上选择下载.官网下载地址:http://www.robomo ...

  2. 获取使用ClickOnce部署的应用程序的版本号

    引子 在编写使用ClickOnce部署的应用程序时,需要在程序的标题栏.软件变更记录.软件关于等页面读取显示当前的版本号. 之前很傻瓜的做法就是在Resource中维护一个string值,在使用到的地 ...

  3. 使用java库中的对称加密算法

    对称加密算法是说加密方和解密方使用相同的密钥.常见的对称加密算法包括4个,DES,DESede(3DES),AES,PBE. 本文讨论的内容是加密算法,不是Message Digest,不是编码.下面 ...

  4. iOS 如何打开后灯(闪光灯)

    - (void)torchOnOrOff { AVCaptureDevice *device = [AVCaptureDevice defaultDeviceWithMediaType:AVMedia ...

  5. Samba服务配置简明笔记

    内部服务器之间拷贝数据,用root账号访问,没有做更复杂的设置. 1.用YUM安装samba服务器端及客户端: [root@tenjs05 init.d]# yum install samba sam ...

  6. RabbitMQ简介

    AMQP简介 在了解RabbitMQ之前,首先要了解AMQP协议.AMQP,即Advanced Message Queuing Protocol,高级消息队列协议,是应用层协议的一个开放标准,为面向消 ...

  7. Ubuntu 14.04 LTS 安装 spark 1.6.0 (伪分布式)-26号开始

    需要下载的软件: 1.hadoop-2.6.4.tar.gz 下载网址:http://hadoop.apache.org/releases.html 2.scala-2.11.7.tgz 下载网址:h ...

  8. 简明Linux命令行笔记:mv

    重命名.覆盖或移动文件 mv [options] existing-file new-filename mv [options] existing-file-list directory mv [op ...

  9. Root--超级用户

    http://www.shuame.com/root/  root (计算机术语言) ROOT存在于Linux系统.UNIX系统(如AIX.BSD等)和类UNIX系统(如稳定到服务器都在用的Debia ...

  10. 11月8日下午Jquery取属性值(复选框、下拉列表、单选按钮)、做全选按钮、JSON存储、去空格

    1.jquery取复选框的值 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "htt ...