对于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. LeetCode 笔记系列 17 Largest Rectangle in Histogram

    题目: Largest Rectangle in Histogram Given n non-negative integers representing the histogram's bar he ...

  2. Python2.7.6标准库内建函数

        Built-in Functions     abs() divmod() input() open() staticmethod() all() enumerate() int() ord( ...

  3. IoC模式(依赖、依赖倒置、依赖注入、控制反转)

    1.依赖 依赖就是有联系,有地方使用到它就是有依赖它,一个系统不可能完全避免依赖.如果你的一个类或者模块在项目中没有用到它,恭喜你,可以从项目中剔除它或者排除它了,因为没有一个地方会依赖它.下面看一个 ...

  4. 【JavaScript】冒泡排序,字符串排序,数字排序

    原理:是临近的数字两两进行比较,按照从小到大或者从大到小的顺序进行交换, function bubbleClick() { var str = "50,1,4,6,9,76,43,22,2, ...

  5. [转]Eclipse启动Tomcat时45秒超时解决方法

    原文地址:http://it.oyksoft.com/post/6577/ Eclipse启动Tomcat时,默认配置的启动超时时长为45秒.假若项目启动超过45秒将会报错.两种解决方法:1.改XML ...

  6. Python【第四章】:socket

    ocket通常也称作"套接字",用于描述IP地址和端口,是一个通信链的句柄,应用程序通常通过"套接字"向网络发出请求或者应答网络请求. socket起源于Uni ...

  7. Map工具系列-05-添加业务参数工具

    所有cs端工具集成了一个工具面板 -打开(IE) Map工具系列-01-Map代码生成工具说明 Map工具系列-02-数据迁移工具使用说明 Map工具系列-03-代码生成BySQl工具使用说明 Map ...

  8. 在eclipse中遇到cannot open output file xxx.exe: Permission denied 的解决办法

    该问题出现的原因主要原因是,编译后运行的程序未能正确关闭,解决方法:删除debug目录即可 同理在vc6.0遇到同样问题时,删除debug目录,或者重启vc6.0即可

  9. Fedora 23 忘记root密码

    方法:进入单用户模式改密码 进入grub后,按e进入编辑模式.找到以“linux"开头的那一行,在末尾加” rw init=/bin/bash".ctrl-x启动 (grub2用c ...

  10. getResourceAsStream和getResource的用法及Demo实例

    用JAVA获取文件,听似简单,但对于很多像我这样的新人来说,还是掌握颇浅,用起来感觉颇深,大家最经常用的,就是用JAVA的File类,如要取得 D:/test.txt文件,就会这样用File file ...