记得看新闻,俄罗斯一位程序员,只要有工作花费他超过90秒的时间,他一定会写一个脚本来实现它。 我所在的单位人比较多,有时要跟某个同事联系时,需要去企业通讯录查他的电话。具体步骤,打开浏览器——打开内网——点开企业通讯录——输入查询关键字。这个步骤虽然花费不了多长时间,但对于懒癌晚期的我还是有点繁琐,所以就想找个更简洁的方法。这就是本文要介绍的,通过简单的批处理(BAT)来实现这个想法。 比较方便的是,单位通讯录可以下载保存为excel格式的。这就简化了下边的工作。先把通讯录复制到一个txt文档里。如下,保存到D盘,命名为contact.txt。 数据文件有了,那么通过什么方式查询我们要找的信息呢,BAT代码是下边这样的。 @echo off echo 输入查询关键字 set /p a= type D:\contact.txt|find /i '%a%' pause 最主要的是第3,4行。第3行,要求用户输入查询关键字,保存到变量a里。第4行,在D:\contact.txt里,不分大小写的查找用户输入的关键字,并显示出来。 最后一定要加个pause,要不然查询结果闪一下,窗口就关闭了。 将代码复制到一个txt文档里,后缀改为.bat。试一下效果;这里我输入了甲子,回车后同事赵甲子的信息就显示出来了。 再试一个: 输入销售部,所有销售部的同事信息就显示出来了。 这个批处理的功能就是,将所有包含输入的关键字的行显示出来。 所以,我们通过工号,姓名,手机,部门,姓名简拼等,来查询其对应的信息。 下边对程序和显示结果优化一下。我们希望查完一条后,还能继续查询,所以需要加入一个循环。最终代码如下: @echo off title 通讯录 color 1A cls :start echo 输入查询关键字 set /p a= cls echo ━━━━━━━━━━━━━━━━━━━━━━━━━━━━ echo 工号 姓名 手机 部门简拼 echo ━━━━━━━━━━━━━━━━━━━━━━━━━━━━ type D:\contact.txt|find /i '%a%' echo ━━━━━━━━━━━━━━━━━━━━━━━━━━━━ echo. goto start pause 试一下效果: 比如查询尤壬午,这次通过简拼方式,输入yrw: 窗口名称改成了“通讯录”,显示效果改成了蓝底绿字,查询结果加了个框。显示结果后,下边还在提示输入查询关键字,这样我们可以继续查询。 这样呢,就已经比进入单位主页来查要方便点了。但是,笔者我平时用键盘较多,这个方法还需要把手挪到鼠标上,找到并双击这个bat文件,才能使用。懒癌发作起来,连我自己都怕。还好,windows有个功能可以解决这个问题。那就是快捷键。 方法就是给这个BAT文件,创建一个快捷方式,然后右击快捷方式——属性,有一栏快捷键,给它分配个快捷键就OK了。 只是BAT的一个小应用,难入大神法眼,请勿喷,呵呵。有不足之处,欢迎大家批评指正。 |
|