背景:

100万条数据。格式如下:

ID 地址

1895756546931805 安徽省六安市裕安区固镇镇佛俺村柳树队
5758 安徽省蒙城县岳坊镇胡寨村小组小胡寨庄6号

1834941674099699 安徽省蚌埠市五河县申集镇朱圩村
1850212719717844 安徽省淮北市
1850212774979300 安徽省合肥市
1850212784889487 安徽省宿州市泗县

目标要求:

筛选出地址不太准确的。地址长度大于11个字符的。

保留前面ID。将结果输出到一个文件中。

操作过程:

#第一步过滤 地址以各个省份开头的
awk '$2 ~ /^北京/{print $0}' originfile >> mid1
awk '$2 ~ /^天津/{print $0}' originfile >> mid1
awk '$2 ~ /^上海/{print $0}' originfile >> mid1
awk '$2 ~ /^重庆/{print $0}' originfile >> mid1
awk '$2 ~ /^安徽/{print $0}' originfile >> mid1
awk '$2 ~ /^河北/{print $0}' originfile >> mid1
awk '$2 ~ /^山西/{print $0}' originfile >> mid1
awk '$2 ~ /^内蒙/{print $0}' originfile >> mid1
awk '$2 ~ /^辽宁/{print $0}' originfile >> mid1
awk '$2 ~ /^吉林/{print $0}' originfile >> mid1
awk '$2 ~ /^黑龙/{print $0}' originfile >> mid1
awk '$2 ~ /^浙江/{print $0}' originfile >> mid1
awk '$2 ~ /^江苏/{print $0}' originfile >> mid1
awk '$2 ~ /^广东/{print $0}' originfile >> mid1
awk '$2 ~ /^福建/{print $0}' originfile >> mid1
awk '$2 ~ /^江西/{print $0}' originfile >> mid1
awk '$2 ~ /^湖南/{print $0}' originfile >> mid1
awk '$2 ~ /^海南/{print $0}' originfile >> mid1
awk '$2 ~ /^河南/{print $0}' originfile >> mid1
awk '$2 ~ /^湖北/{print $0}' originfile >> mid1
awk '$2 ~ /^山东/{print $0}' originfile >> mid1
awk '$2 ~ /^甘肃/{print $0}' originfile >> mid1
awk '$2 ~ /^青海/{print $0}' originfile >> mid1
awk '$2 ~ /^贵州/{print $0}' originfile >> mid1
awk '$2 ~ /^四川/{print $0}' originfile >> mid1
awk '$2 ~ /^云南/{print $0}' originfile >> mid1
awk '$2 ~ /^陕西/{print $0}' originfile >> mid1
awk '$2 ~ /^广西/{print $0}' originfile >> mid1
awk '$2 ~ /^宁夏/{print $0}' originfile >> mid1
awk '$2 ~ /^新疆/{print $0}' originfile >> mid1
awk '$2 ~ /^台湾/{print $0}' originfile >> mid1
awk '$2 ~ /^香港/{print $0}' originfile >> mid1
awk '$2 ~ /^澳门/{print $0}' originfile >> mid1
awk '$2 ~ /^西藏/{print $0}' originfile >> mid1 #第二步 将第二列的字符创长度超过11的筛选出来存入final文件 awk '{if(length($2)>11) print $0}' mid1 >> final

  

shell awk处理过滤100万条数据的更多相关文章

  1. 极限挑战—C#+ODP 100万条数据导入Oracle数据库仅用不到1秒

    链接地址:http://www.cnblogs.com/armyfai/p/4646213.html 要:在这里我们将看到的是C#中利用ODP实现在Oracle数据库中瞬间导入百万级数据,这对快速批量 ...

  2. 极限挑战—C#100万条数据导入SQL SERVER数据库仅用4秒 (附源码)

    原文:极限挑战-C#100万条数据导入SQL SERVER数据库仅用4秒 (附源码) 实际工作中有时候需要把大量数据导入数据库,然后用于各种程序计算,本实验将使用5中方法完成这个过程,并详细记录各种方 ...

  3. Qt中提高sqlite的读写速度(使用事务一次性写入100万条数据)

    SQLite数据库本质上来讲就是一个磁盘上的文件,所以一切的数据库操作其实都会转化为对文件的操作,而频繁的文件操作将会是一个很好时的过程,会极大地影响数据库存取的速度.例如:向数据库中插入100万条数 ...

  4. C#100万条数据导入SQL SERVER数据库仅用4秒 (附源码)

    作者: Aicken(李鸣)  来源: 博客园  发布时间: 2010-09-08 15:00  阅读: 4520 次  推荐: 0                   原文链接   [收藏] 摘要: ...

  5. 教你如何6秒钟往MySQL插入100万条数据!然后删库跑路!

    教你如何6秒钟往MySQL插入100万条数据!然后删库跑路! 由于我用的mysql 8版本,所以增加了Timezone,然后就可以了 前提是要自己建好库和表. 数据库test, 表user, 三个字段 ...

  6. 2020-04-23:假设一个订单的编号规则是AAAAOrder2020-0000001,AAAAOrder2020-0000002....后面的数字是自增长,如果订单号码达到AAAAOrder2020-1000000(100万),数据库中应该有100万条数据,此时我随机删除2条数据(物理删除,且不考虑日志和备份),请问怎么找到删掉的数据的编号?给出解题思路即可,答案需要在1秒内运行得到。

    福哥答案2020-04-23: 分批查询:分成500次count(),每次count()肯定小于等于2000条数据,经过测试,一次count()在.1ms左右,500次就是500ms.二分法(时间微超 ...

  7. PHP实现插入100万条数据优化

    第一种方法一条一条执行插入,结果会很慢 <?php header("Content-Type:text/html;charset=utf-8"); date_default_ ...

  8. [C#]_[使用微软OpenXmlSDK (OpenXmlReader)读取xlsx表格] 读取大数据量100万条数据Excel文件解决方案

      1.OpenXmlSDK是个很好的类库,可惜只能通过C#调用,C#的童鞋又福气了. 2.服务端程序由于没法安装office,所以这个对asp.net网站来说是最理想的库了.需要.net 4.0版本 ...

  9. Oracle中插入100万条数据

    在做项目的工程中,需要数据库中存在大量的数据进行程序的验证,但是我们又没有数据,这时就需要我们自己手动建一个表,插入大量数据,进行验证. 那么插入大量数据的sql语句如下: insert into E ...

随机推荐

  1. FileStream说明

    FileStream(String, FileMode)    FileStream(String path, FileMode) 文件打开模式:(FileMode)包括6个枚举 Append:追加  ...

  2. C语言数据结构_严蔚敏+吴伟民 课本源码

    http://www.cnblogs.com/kangjianwei101/category/791617.html

  3. tarjan求强连通分量

    http://poj.org/problem?id=3180 //#include<bits/stdc++.h> #include<iostream> #include< ...

  4. 通过微信公众号API复制公众号自定义菜单同时增加子菜单方法

    主要的原因是再不破坏公众号以前的菜单的基础上增加自定义菜单,主要步骤如下: 1.通过微信提供的微信公众平台接口调试工具获取公众号的所有自定义菜单 网址:https://mp.weixin.qq.com ...

  5. 安装IDEA的历程

    安装IDEA的历程 写这篇博客的主要目的就是记录自己安装IDEA的"复杂"过程,顺便给一些需要帮助的人提供一些帮助,以及让他们可以少走一些弯路.之所以说"复杂" ...

  6. mapreduce 学习笔记

    mapreduce基础概念 mapreduce是一个分布式计算框架(hadoop是mapreduce框架的一个免费开源java实现). mapreduce要点 主节点(master node)控制ma ...

  7. Loadrunner 11.00录制App脚本篇(Win10)

    参考博文1:https://www.cnblogs.com/mxqh2016/p/6016866.html 参考博文2:https://blog.csdn.net/myohmy2008/article ...

  8. SQLServer导入导出命令报错

    错误描述: SQL Server阻止了对组件‘xp_cmdshell’的过程‘sys.xp_cmdshell’的访问.因为此组件已作为此服务嚣安全配置的一部分而被关闭. 系统管理员可以通过使用sp_c ...

  9. 多线程同步synchornized、volatile、Atomic、CountDownLatch示例

    synchronized关键字 锁对象.synchronized(this)和synchronized方法都是锁当前对象. import java.util.concurrent.TimeUnit; ...

  10. WebSocket 实现链接 发送消息

    Websocket 原理浅析地址: https://www.cnblogs.com/yuanyongqiang/articles/10457793.html 直接上代码: myWebSocket.py ...