借助常见工具快捷实现录音文件的查找与导出

最近blhy的客户提出这个需求,对方提供一批来电的流水号,让我们给出相应的录音文件。传统的情况下,客户方一般需要的是某一段时间内的录音,由于系统中的录音文件的文件名是按照年月日时分秒这个规则去命名的,所以这种情况下用命令查找和打包都比较方便。而现在是对方给我们的只是一段时间内的指定流水号。

说到这里你可能有两种思路:(1)看看这些流水号大致落在哪个时段范围内的,把这段时间内的录音文件全部打包导出,然后再从其中摘取目的文件;(2)将流水号拷贝过来,挨个从系统中去查找和下载录音文件。

个人这两种方法都有点问题,针对思路(1),如果总的录音文件少的话,还比较好处理,如果录音文件多的话,简直就是场灾难,首先你打包文件需要时间,另外你再从其中去找的话,无异于大海捞针,这里先假定录音文件名和流水号在名称上有对应关系;针对思路(2),挨个查找比较靠谱,但是如果对方给出的列表比较长的话,这就是一项重复的工作,伤神费力,也是一场灾难。

通过观察发现,blhy提供的流水号是与录音文件名没有直接的关系的,所以我的思路是:先试图通过流水号去找到录音文件名中的局部或者全部(通过excel去匹配,主要是找到对应关系),然后组装命令(editplus工具或者其他),写成shell脚本,通过执行shell脚本去查找这些录音文件并打包压缩,最后通过winSCP工具导出到本地。

于是,按照这个思路,分下面几步走:

1、在数据库的call_pickup_specimen_info表中,存储的有流水号与录音文件名局部的对应关系,流水号是specimen_code这个字段,局部的录音文件名是userfield_id这个字段,于是通过在数据库中执行查找这两列的sql语句(例如SELECT specimen_code,userfield_id FROM `call_pickup_specimen_info` where specimen_code BETWEEN ‘2014090100110054‘ and ‘2014090623595954‘),将这两列的数据查询出来,全选,复制到excel中;

2、将查找的流水号数据复制到excel的sheet2中,使用excel的VLOOKUP函数,将sheet2中的流水号对应的录音文件名局部的userfield_id信息匹配出来;

3、通过匹配得到userfield_id信息后,要考虑拼接linux命令了,完整的linux命令类似“find /var/spool/asterisk/monitor/1 -name ‘*20140825*‘ | xargs zip "/opt/blhytest.zip"。可以很明显的看出,我们需要在刚刚匹配出来的userfield_id信息的前后分别加上一段固定的内容,来拼接成我们所需要的linux命令。不喜欢黄师傅用的Notepad++,一直喜欢使用editplus这个文本编辑工具,推荐。将userfield_id复制到editplus之后,通过全选文本内容--右键“格式”--行注释--输入注释符,这里我写的是“find /var/spool/asterisk/monitor/1 -name ‘*”,也即命令的前半部分;通过“搜索”--“替换”菜单,将“\n”替换为“*‘ | xargs zip "/opt/blhytest.zip" \n”,注意勾选下面的“使用正则表达式”,即可在每行的末尾加入固定的内容,至此我们的命令已经拼接完成了,很快,至少比excel要快;

4、将该文件保存为.sh格式的文件,例如我写的是blhyexport.sh,通过winSCP工具上传到服务器上任意目录下,自己记得这个路径就行;

5、使用 "chmod 777 blhyexport.sh",为该文件授权;

6、通过"./blhyexport.sh"就可以执行该脚本打包录音文件了,屏幕闪现的是一行行的执行过程,整个打包的过程很快;

7、打包完毕,通过winSCP工具,分分钟就可以将打包的录音文件下载到本地了,这个压缩包里面的录音文件正是你想要的。

传统的依次复制流水号去查询并下载,需要浪费两三个小时甚至是一下午时间(视任务量多少而定),而使用上述方法,不论任务量有多少,不超过10分钟就可以搞定了。借助于我们熟悉的excel、editplus、linux命令,可以帮助我们快捷高效地完成任务。

时间: 2024-10-06 21:52:14

借助常见工具快捷实现录音文件的查找与导出的相关文章

借助Process Explorer定位断电未保存的录音文件

话说某大神(大婶)开会常偷懒,用Windows自带的录音机进行录音并用记事本记录会议精要却没有点击Ctrl+S的习惯,结果就给我找了今天的难题.(之前都是Office的自动保存在哪里……) 还是一样,先将结果摆在前面:录音文件缓存位置:C(系统盘符):\Users\AbsZero(用户名)\AppData(隐藏文件夹)\Local\Temp下,开头为ART(后面数字可能不同),扩展名为TMP,建议按照修改时间查找.将对应文件扩展名更改为WMA即可用音频播放软件打开.很遗憾的是,记事本的缓存没有找

在没有借助任何工具下破解开机密码

原文地址:http://www.cnblogs.com/vforbox/p/4828855.html 阅读目录 简单介绍 实验操作 笔者发现微软的一个漏洞,不用借助任何工具(U盘.光盘)来进行破解开机密码,可能其大神早已经发现,这里我就当是一个学习心得吧 简单介绍 本次实验对象是 win7专业版.旗舰版.家庭版操作系统(都要是ISO官方系统镜像版本,而不是gho镜像文件) 当我们在登陆界面按五次shift键的快捷方式来调用粘滞键,会弹出如下界面 实验操作 重启计算机,当计算机启动到显示"正在启动

录音文件lame转换MP3相关配置

文件下载整个功能完成了,那么对应的文件上传也跑不了.So~ Look here~ 业务需求是录制音频然后上传到七牛并且Android可以读. 与安卓沟通了一下统一了mp3格式,大小质量都不错.由于AVAudioRecorder录音的格式为.caf或者.wav而且很大需要进行转换压缩为MP3格式.这里需要用到三方库 lame. 使用lame转换后音频的质量和 _recorder = [[AVAudioRecorder alloc] initWithURL:_recordFilePath setti

extundelete工具恢复Linux删除文件

下载相应软件包 wget http://jaist.dl.sourceforge.net/project/e2fsprogs/e2fsprogs/1.41.14/e2fsprogs-1.41.14.tar.gz wget http://jaist.dl.sourceforge.net/project/extundelete/extundelete/0.2.4/extundelete-0.2.4.tar.bz2 wget http://jaist.dl.sourceforge.net/projec

【分享】Android Studio专用文件转换工具:把ANSI文件批量另存为无BOM的UTF-8文件

[分享]Android Studio专用文件转换工具:把ANSI文件批量另存为无BOM的UTF-8文件 在Andoird Studio下编译java文件时,经常会出现像下面的错误: Error:(29, 43) 閿欒: 缂栫爜UTF-8鐨勪笉鍙槧灏勫瓧绗? 在这里,分享一个工具:ANSI文件批量另存为无BOM的UTF-8文件: 把下面代码用记事本存为AndroidStudioJava编码.vbs,双击即可使用: on error resume next Set WshShell=WScrip

小工具:删除某些文件夹 及 其子文件夹

背景:偶最近在一个任务的开发测试的过程中, 需要重复的去运行程序,在测试过程中 每运行一次,会产生大量的 folder 及 file, 尤其是 log file. 有时侯可能不是程序的问题,是其它原因,因为 各个目录下大量的 folder 及 file 会对我造成干扰,本能的想把它们统统干掉,快速的找到出问题的log file 来解决问题.于是便粗制烂造了这个工具,目前它暂时满足偶的需求. 以后有新的需求,可以在此基础上扩展. 下载:http://pan.baidu.com/s/1pJ0mKQ3

Java 通过Xml导出Excel文件,Java Excel 导出工具类,Java导出Excel工具类

Java 通过Xml导出Excel文件,Java Excel 导出工具类,Java导出Excel工具类 ============================== ?Copyright 蕃薯耀 2017年9月13日 http://www.cnblogs.com/fanshuyao/ 直接上代码: import java.io.IOException; import java.lang.reflect.InvocationTargetException; import java.lang.ref

使用概要管理工具创建定制概要文件,并在此节点上 创建集群以及在集群服务器中部署应用

使用概要管理工具创建定制概要文件,并在此节点上 创建集群以及在集群服务器中部署应用 上篇介绍了在Lnux上安装WebsphereV8.5,以及使用概要管理工具创建了Dmgr管理概要文件. Dmgr服务器不能运行应用程序,应用程序需要运行在特定的JavaEE服务器上,Dmgr管理服务器只负责管 理与它联合的节点.可以在新建的profile对应的节点上创建Websphere实例或者集群实例.并把此节点与 Dmgr服务器联合,交由Dmgr管理.此篇介绍使用概要管理工具创建定制概要文件,并在此节点上创建

js播放wav格式的录音文件

<input type="button" onclick="playSound('wavFileId');" value="play"/> <embed id="wavFileId"        src="c://fileRecord/20140729/006/20140729095707000---Out-006.wav"       width="0"