从DOS过来的老鸟应该都知道批处理,这个功能在WINDOWS中仍然保留着。批处理 说白了就是把一系列DOS命令写在一个文本文件里,然后把这个文件命名为XXX.bat(WINXP以后的系统也可以命名为*.cmd),然后运行它就可 以一次执行一系列命令和程序了,当然也包括WINDOWS下的程序。
昨天处理一个问题时需要写一个批处理,批处理的前面运行了几个DOS命令,最后调用一 个WINDOWS程序。可问题是,调用的WINDOWS程序打开后,CMD命令提示符窗口不会关闭,而是要等待这个WINDOWS程序关闭后它才会关闭。 回想以前DOS下的批处理,都是执行一个程序,然后等待这个程序执行完毕后才会执行下一个程序,因为DOS是单任务操作系统嘛。但WINDOWS里有没有 什么方法让批处理调用程序后不用等待程序结束而继续执行后面的命令呢?网上搜了一下,也没找出个结果。自己又研究了半天,终于解决了。解决的关键就是使用 了一个不太常用的命令:start
一开始我的批处理是这么写的(“/”和后面的内容是注释):
@echo off                /这是不让CMD窗口中显示运行的什么命令
DOS命令          /这是一系列DOS命令,用DOS命令代替
abc          /最后要调用的WINDOWS程序文件名为abc.exe
echo "ok"          /输出“OK”
ping /n 127.1 >nul /延时 5S
exit
问题就是这么写死活都无法在运行abc.exe之后自动关闭CMD窗口。后来我终于想起来WINDOWS的命令提符中有一个start命令,心想使用它也许批处理就不会等待abc.exe执行完毕了。于是把批处理改为:
@echo off           /这是不让CMD窗口中显示运行的什么命令
DOS命令             /这是一系列DOS命令,用DOS命令代替
start abc           /最后要调用的WINDOWS程序文件名为abc.exe
echo "ok"           /输出“OK”
ping /n 127.1 >nul /延时 5S
exit
果然,abc.exe运行之后,这个批处理就继续执行后面的exit命令,从而自己退出了。原来,使用start调用的程序,批处理是不会等待程序运行结束的。遇到与我相同问题的朋友,不妨一试。

参考:http://www.cnblogs.com/yukaizhao/archive/2010/07/03/1770659.html

最新文章

  1. IntelliJ IDEA 创建web项目后添加Java EE (Tomcat)的依赖包
  2. WordPress RokStories插件‘thumb.php’多个安全漏洞
  3. JAVA的对象和引用——一个真实遇到的问题
  4. linux虚拟机局域网网卡配置
  5. 使用线程统计信息(Thread Statistics)
  6. J - Joyful HDU - 5245 (概率)
  7. hdu 1280 堆排序
  8. bootstraptable学习(2)分页
  9. crm作业知识点集合[二]
  10. Java开发中常用的设计模式(一)---工厂模式
  11. Linux iptables常用命令的使用
  12. 使用maven命令终端构建一个web项目及发布该项目
  13. 学习生活必须知道的网站或者App
  14. Angular 4 路由守卫
  15. Apache ZooKeeper 单机、集群部署文档
  16. 算法技巧讲解》关于对于递推形DP的前缀和优化
  17. keepalived+lvs高可用配置
  18. leetcode笔记(四)9. Palindrome Number
  19. webapi 返回json
  20. (转)Linux修改eth2到eth0(70-persistent-net.rules)

热门文章

  1. HDU2873 Bomb Game(二维SG函数)
  2. Monitoring and Managing Tomcat
  3. BZOJ1588 [HNOI2002]营业额统计 set
  4. 教程:Visual Studio 中的 Django Web 框架入门
  5. epoll使用详解
  6. 移动端Tap与滑屏实战技巧总结以及Vue混合开发自定义指令
  7. rsync的man手册(未完成)
  8. mysql 用户/密码/权限操作
  9. LOJ.117.[模板]有源汇有上下界最小流(Dinic)
  10. git 创建SSH key