awk命令

awk命令

	1)概念:一个强大的文本分析工具,awk把文件逐行地读入,以空白字符为默认分隔符将每行进行切片,然后对这些切片进行分析和处理。
	
	
	2)说明:
	
		1)awk会针对文件(或数据流)中的每行文本执行程序脚本。
		2)每行文本中,数据切片是通过分隔符进行划分的,分隔符默认为:任意的空白字符(空格或制表符)。
		3)awk在读取一行文本时,会用分隔符将每行数据进行切片,并自动给一行中的每个数据切片分配一个变量:
			$0 代表整个文本行
			$1 代表文本行中的第1个数据切片
			$2 代表文本行中的第2个数据切片
			$n 代表文本行中的第n个数据切片
			
			$NF 代表文本行中最后的那个数据切片
				
				
	3)格式:
	
		awk [参数] 'awk程序脚本' filename

		
	4)参数:
	
		-F 分隔符
		# awk -F ':' 指定分隔符为冒号

		
	5)函数:
	
		print:打印数据
			1)参数可以是变量、数值、字符串
			2)字符串必须用双引号包起来,参数用逗号分隔。
		
	6)举例:
	
		awk '{print $2$3$4$5}' dumpFile1
		# 大括号{}	用于根据特定的模式(pattern)对一系列的指令(action)进行分组。
		
		
	7)常用:
	
		# 求最大值
		.. | awk 'BEGIN {max = 0} {if ($1 > max) max=$1} END {print "Max=", max}'
		# 求最小值
		.. | awk 'BEGIN {min = 1000000} {if ($1 < min) min=$1} END {print "Min=", min}'
		# 求和		
		.. | awk '{sum+=$1} END {print "Sum=", sum}'
		# 求平均值	注:NR表示awk开始执行程序后所读取数据的行数
		.. | awk '{sum+=$1} END {print "Avg=", sum/NR}'

		# 条件过滤
		.. | awk '{if ($1 > 10) print $1 }'


		# 打印第10行的内容
		.. | awk 'NR==10' 


	8)awk解析excel:
		1>将excel文件中的数据选中,然后复制到文本文件中。
		2>cat excel复制过来的数据.txt | awk -F '\t' '{print $1"\t"$2"\t"$5"}' > 解析结果.txt
				
				


	
	

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值