shell在一个大文件找出想要的一段字符串操作技巧

昨天端午,晚上的时候接了一个电话,我朋友的公司,数据库被两个工作没多久的phper给弄坏了,具体就是把一个字段值,给全表弄成一个了名字了,当然这个是可以配置了禁止全表更新数据库,这下可急坏了,找到我,叫我给看一下,他们每天3:00是有备份的,按天备份,还好不是增量的,当然binlog日志也是开启的,我看了一下他们的备份文件是

[root@AY1406121449173218ccZ ~]# ls -lha /www/datebak/2016-06-09.sql
-rw-r--r-- 1 root root 4.9G Jun  9 03:03 /www/datebak/2016-06-09.sql
[root@AY1406121449173218ccZ ~]#

他们整个备份文件有5G,当然恢复的效果有多种,我想了一下,把他们今天这一整天的注册的用户给弄出来,也没有多少就10多个,然后就是想办法在这5个G的数据中把我需要的表找出来。

[root@AY1406121449173218ccZ datebak]# grep  -n  "ROP TABLE IF EXISTS `activity`" 2016-06-09.sql
-bash: activity: command not found
22:DROP TABLE IF EXISTS `activity`;
67:DROP TABLE IF EXISTS `activity_img`;
93:DROP TABLE IF EXISTS `activity_recommended`;
124:DROP TABLE IF EXISTS `atest`;
149:DROP TABLE IF EXISTS `black_user`;
175:DROP TABLE IF EXISTS `category`;
204:DROP TABLE IF EXISTS `class_grade`;
232:DROP TABLE IF EXISTS `collocate_banner`;
262:DROP TABLE IF EXISTS `course`;
330:DROP TABLE IF EXISTS `edu_account_bind`;
366:DROP TABLE IF EXISTS `function`;
392:DROP TABLE IF EXISTS `head_img`;
418:DROP TABLE IF EXISTS `information`;
455:DROP TABLE IF EXISTS `information_img`;
480:DROP TABLE IF EXISTS `installed_app`;

通过 shell的 grep 这个命令,我们可以找出我们需要的表中的行数

sed -n '5112,5153p' 2016-06-09.sql > tb_user_info.sql

再通过sed 命令将我们找到的行号写入另一个文件中,这样,基本就解决了,然后,把我导出来的数据 给导入原来的数据中,然后再将导出的一天的数据给导入,就解决了问题,整个解决问题的时间,没有超 过1小时,主要是shell 没有经常用,还查了下资料,当然思路也是最重要的,解决问题,第一个,要有一个清析的思路,把整个过程,好好过几下,要不然,考滤不全,会造成更多的问题

时间: 2024-11-10 12:51:37

shell在一个大文件找出想要的一段字符串操作技巧的相关文章

怎样扫描D盘所有目录下的文件找出mp4格式的

问题描述 怎样扫描D盘所有目录下的文件找出mp4格式的 我要做一个模仿酷狗的音乐窗体,怎样扫描D盘所有目录下的文件找出mp4.MP3格式的求大神帮帮忙!跪谢! 解决方案 什么语言?C#用 Directory.GetFiles 解决方案二: 能不能具体的?有代码吗? 解决方案三: Directory.GetFiles 怎么用? 解决方案四: https://msdn.microsoft.com/zh-cn/library/wz42302f.aspx

网站分析5大重点 找出网站有效销售的关键所在

中介交易 http://www.aliyun.com/zixun/aggregation/6858.html">SEO诊断 淘宝客 云主机 技术大厅 你是否曾经遭遇过网站流量明明不小,但就是无法转成消费者购买产品之营收的问题?其实如果发生这种现象,就表示网站吸引到的访客,不是那些未来会购买产品的潜在顾客.要找出对的目标,市面上有许多付费的网站分析服务,免费的Google Analytics也能做到追踪不同页面的访客细节,但在开始钻研这些数据之前,以下5个重点是你不能忽略的: 1. 网站访客

BootStrap Progressbar 实现大文件上传的进度条的实例代码_javascript技巧

1.首先实现大文件上传,如果是几兆或者几十兆的文件就用基本的上传方式就可以了,但是如果是大文件上传的话最好是用分片上传的方式.我这里主要是使用在客户端进行分片读取到服务器段,然后保存,到了服务器段读取完了之后将分片数据进行组合. 2.前端代码如下: <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="UploadTest2.aspx.cs" Inherits="Htm

JavaScript通过this变量快速找出用户选中radio按钮的方法_javascript技巧

本文实例讲述了JavaScript通过this变量快速找出用户选中radio按钮的方法.分享给大家供大家参考.具体分析如下: 下面的JS代码通过this变量结合radio按钮的onchange事件快速找出用户选择的哪一个radio按钮 <script> function favAnimal(button) { alert('You like '+button.value+'s.'); } </script> <input type="radio" name

字符串中找出连续最长的数字字符串的实例代码_C 语言

复制代码 代码如下: //1. 写一个函数,它的原形是int continumax(char *outputstr,char *intputstr) //功能: //在字符串中找出连续最长的数字串,并把这个串的长度返回, //并把这个最长数字串付给其中一个函数参数outputstr所指内存. //例如:"abcd12345ed125ss123456789"的首地址传给intputstr后,函数将返回9,outputstr所指的值为123456789 #include<stdio.

linux中Shell分析Nginx日志 找出被阻止的IP

在日常运维中会发现流量突增现象或者服务器负载升高等现象,为找到原因,需要使用nginx limit模块 对访问的Ip进行限制,然后可以分析日志. 配置nginx限制IP访问,可配置多个zone. limit_req_zone $binary_remote_addr zone=allips:10m rate=20r/s; 对产生的nginx日志进行分析 脚本. ##提供默认日志路径和名称 logsFile="日志名称" ##配置多个zoneName zoneName="alli

支付宝大数据找出5类最易上当骗局

电信诈骗正在成为社会的毒瘤.近期来,由于电信诈骗引发的多起惨痛悲剧,如山东徐玉玉案等,引发了社会的重视.中国公安大学与蚂蚁金服最新的一项联合调查显示:中国大学生的防骗能力平均得分仅为69分,其中,近三成大学生测试不及格,只有3%的学生获得满分. 这次调查涵盖了近千所大学的30万大学生,从入学年份来看,大一新生得分最低,最容易被骗.数据显示:2016级新生的平均分为66.6,2014-2015级的平均分69.1,2013级老生的平均分则为70.7. 此外,理工类学校的平均得分普遍高于其他院校,排名

asp.net web大文件上传带进度条实例代码_实用技巧

复制代码 代码如下: using System; using System.Data; using System.Configuration; using System.Collections; using System.Web; using System.Web.Security; using System.Web.UI; using System.Web.UI.WebControls; using System.Web.UI.WebControls.WebParts; using Syste

jsp上传大文件失败的问题

问题描述 jsp上传大文件往往会超时失败,但是换成swfupload进行上传,就可以上传大文件了我想问下,这两种上传所用的技术有什么不同? 解决方案 解决方案二:你前面用的是什么,有设置限制文件大小吗?解决方案三:FTP...解决方案四:就我了解,普通的jsp上传文件,用的http协议,在上传大文件的时候,经常会失败,我猜测是不是这样:因为http协议不支持断点续传,如果公网网络环境不好的话,上传几百兆的文件的时候,免不了在特定的时刻会掉线.导致上传失败.但是,我想知道,swfupload是采用