Bat小试牛刀

前天版本发布后同事才发现有点小瑕疵,当然这是前期的设计和测试没到位造成的。撇开这些不说,我想说的是知识面广一点,做起事情来可能更得心应手些。

大致是这样的,由于版本的迭代,导致发布的程序只能清除一部分缓存,那么一直驻留内存的那部分缓存将会导致新的数据将不能被提取。而且新的数据是每天早晨9:40更新的。而清空缓存是通过http get方式来实现的。

至此我们就想到在9:50定时通过http get来访问缓存清空页面,我觉得使用Bat+windows任务计划做起来最方便,CleanCache.bat代码如下:

@echo off
explorer http://xx.xx.xx.xx/clean_cache
ping -n 20 127.1>nul
taskkill /IM iexplore.exe /T /F
exit

然后在使用windows的任务计划定时执行这个BAT文件即可。

简单解释下CleanCache.bat文件中的指令,Bat是BATCH的简写,bat文件每行是一条操作。

  • @是不显示后边的指令;
  • echo off是关闭回显;
  • @echo off 就是关闭回显,而且连echo off都不显示;
  • explorer是Windows的资源管理器,可以打开目录如explorer d:是使用资源管理打开D盘,如果后面跟网址将会使用IE打开。其实start 命令也可以实现相同效果,但start是使用默认的浏览器打开网址,而explorer使用IE。我是懒省事,因为我待会还会关闭IE,所以我就直接用exporer了。
  • ping -n 20 127.1>nul 是为了等待,等待20次ping的时间;其中127.1是127.0.0.1的缩写,>是重定向,nul是空设备,这里的空设备是nul而不是null哦。
  • taskkill是杀死进程,/IM是根据进程映射名来终结,/F是强制,/T是连带自进程一起杀死。

这里只是抛砖引玉,很多命令的使用帮助可以在DOS里"/?"寻求到更详细的说明。

其实CleanCache.bat使用windows的任务计划时,关不关回显都一样,因为你是看不到显示的,即使连IE浏览器都没显示打开,但你能看到它的进程,我是担心打开过多的IE耗系统资源。

Bat是个强大的工具,玩linux都知道shell,其实他俩就是表兄弟(win/linux)。是个短小精悍的小家伙,用处远比你想象中大的多。

出处:http://www.zhaiqianfeng.com    
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
原文地址:https://www.cnblogs.com/zhaiqianfeng/p/4618568.html