统计一个月份各个营业厅售票总额

本文介绍如何利用gawk进行变量求和操作,并演示了如何通过sort和uniq命令来整理和筛选数据。此外,还提供了示例脚本,用于统计特定月份各营业厅的售票总额。

需要用到的知识,gawk和sort,uniq。

 

awk中的变量求和例子如下:

cat *.dat | awk -v sum=0 '{sum+=$5} END {print $sum}'

 

在awk 中 | /都是元字符,要这么用

awk -F "[|]+" '{print $2}' a.txt

 

用uniq命令可以删除相邻的重复行:

  uniq [file]

另外uniq命令有4个有用的选项:

  $uniq -d file 只输出file中的重复行,且只输出一次,但不输出唯一的行

  $uniq -u file 只输出file中的唯一行(当然是一次啦)

  $uniq -c file 在每行前显示重复次数,可与其他选项结合,例如-cu或-cd或-c

  $uniq -i file 比较时忽略大小写

 

#!/bin/bash

#function: 统计一个月份各个营业厅售票总额
cat XSML200907* > xsml0907
cat XSML200908* > xsml0908
sort xsml0907 > xsml0907so
sort xsml0908 > xsml0908so
gawk -F "[|]" '{print $1}' xsml0907so > 0907
gawk -F "[|]" '{print $1}' xsml0908so > 0908

uniq -cd 0907 > tmp0907
uniq -cd 0908 > tmp0908 

rm -f xsml0907 xsml0908 xsml0907so xsml0908so 0907 0908

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值