awk之NR==FNR问题】的更多相关文章

NR,表示awk开始执行程序后所读取的数据行数. FNR,与NR功用类似,不同的是awk每打开一个新文件,FNR便从0重新累计. 下面看两个例子: 1,对于单个文件NR 和FNR 的 输出结果一样的 : # awk '{print NR,$0}' file1 1 a b c d 2 a b d c 3 a c b d #awk '{print FNR,$0}' file1 1 a b c d 2 a b d c 3 a c b d 2,但是对于多个文件 : # awk '{print NR,$0…
shell编程中,awk简直就是一把利器,你能够把它看成shell的一部分,也能够看成一种单独的语言,功能十分强大.今天先来说一说NR与FNR 先准备两个文件: 1.txt,内容为: user password wolf 123456 zys 123 2.txt 内容为: id user 0001 wolf 0002 xiaozhai 事实上在处理单个文件时,NR与FNR都一样.表示当前读取的行号,如运行awk '{print NR}' 1.txt 和运行 awk '{print FNR}' 1…
一.NR和FNR 1.释义 NR: 表示当前读取的行数 FNR:当前修改了多少行 2.举例 比如现在AWK处理到第五行.第一行没有进行操作,2,3,4,5行进行了操作,那么NR=5,FNR=4 NR==FNR 表示从起始行到当前行,awk都进行了操作,比如修改,添加等等 : 二.NF和$NF 1.释义 NF:浏览记录的域的个数 $NF: 最后一个列,输出最后一个列的内容 2.举例 [root@vshi-template shell]# pwd /root/guanyy/scripts/shell…
http://blog.csdn.net/zhuying_linux/article/details/6822987…
awk是一个强大的文本分析工具,相对于grep的查找,sed的编辑,awk在其对数据分析并生成报告时,显得尤为强大.简单来说awk就是把文件逐行的读入,以空格为默认分隔符将每行切片,切开的部分再进行各种分析处理. awk有3个不同版本: awk.nawk和gawk,未作特别说明,一般指gawk,gawk 是 AWK 的 GNU 版本. awk其名称得自于它的创始人 Alfred Aho .Peter Weinberger 和 Brian Kernighan 姓氏的首个字母.实际上 AWK 的确拥…
转自:http://www.cnblogs.com/emanlee/p/3327576.html awk 用法:awk ' pattern {action} '  变量名    含义 ARGC   命令行变元个数 ARGV   命令行变元数组 FILENAME   当前输入文件名 FNR   当前文件中的记录号 FS   输入域分隔符,默认为一个空格 RS   输入记录分隔符 NF   当前记录里域个数 NR   到目前为止记录数 OFS   输出域分隔符 ORS   输出记录分隔符 1.awk…
Awk总结笔记 介绍 90年代 new awk :nawk Linux 的是gawk 我们简化awk 用法 #  awk [options ] ‘scripts’ file1 file2 .... # awk [options ] ‘PATTERN {action }’ file1 file2 .... 读入文本先切片如下 切5片 每片$n  整行$0 每行片数不一样 Print 内置变量 以下为awk内置变量: ARGC        命令行参数个数 FILENAME    当前输入文档的名称…
awk 有时确实比较省事,做些简单的文本处理,还是很方便的,在这介绍下两个文件的join的操作. 原始文本 bb.txt a 10 b 12 cc.txt a 11 b 13 c 15 awk join主要是用到连个内置的变量 NR,FNR,先看这的区别 awk '{print NR,FNR,$0}' bb.txt cc.txt 1 1 a 10 2 2 b 12 3 1 a 11 4 2 b 13 5 3 c 15 NR是读取所有的行号 FNR读取每个文件的行号索引号,当文件发生变化时,FNR…
关于awk的多文件处理: awk的数据输入有两个来源,标准输入和文件,后一种方式支持多个文件,如1.shell的Pathname Expansion方式:awk '{...}' *.txt # *.txt先被shell解释,替换成当前目录下的所有*.txt,如当前目录有1.txt和   2.txt,则命令最终为awk '{...}' 1.txt 2.txt2.直接指定多个文件: awk '{...}' a.txt b.txt c.txt ...awk对多文件的处理流程是,依次读取各个文件内容,如…
教程来自:http://www.runoob.com/linux/linux-comm-awk.html 教程中的例子很好,可以有助于快速上手awk.但是里面的细节介绍的并不清楚. 问题1:什么时候写在 ''  单引号中, 什么时候写在 '' 单引号前, 什么时候写在 '' 单引号后? 问题2:BEGIN{}是在遍历前执行,{}是在遍历中执行,END{}是在遍历后执行.那么同时出现多个{}是什么情况呢?何时可以写多个{} ? 基本用法 log.txt文本内容如下: 2 this is a tes…