[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[文件操作] BAT如何判断及处理是否有正在运行的word 文档?

请教如何分别编写bat代码,使之符合下面的条件(两种情况,请分开编写,谢谢!)
1、请教如何通过bat判断是否有正在运行的word 文档(任意word文档),如果有,则提示用户保存,并退出本bat;如果没有则继续运行后面的程序?
2、请教如何通过bat判断是否有正在运行的word 文档(任意word文档),如果有,则强制保存并关闭所有的Word文档,并运行后面的程序?

情况1
  1. @echo off
  2. tasklist | findstr /i "WINWORD.EXE"
  3. if not errorlevel 1 (
  4.     echo 请保存Word文档
  5.     pause
  6.     goto :eof
  7. )
  8. echo 继续运行后面的程序
  9. pause
复制代码

TOP

回复 2# Python
谢谢兄台的指点!能否注释一下代码,不是很明白!

TOP

回复 3# tangqingfu


    第几行不明白?我可以帮忙讲解

TOP

回复 4# BAT-VBS

呵呵,第2行到第7行不太理解,能否解释一下?

TOP

回复 5# tangqingfu


先说第二行吧,你先看看系统自带的帮助文档,不懂再问。
tasklist /?
findstr /?

TOP

本帖最后由 tangqingfu 于 2013-5-22 16:50 编辑

网上找了一个
  1. @echo off
  2. tasklist|find /i "winword.exe">nul&&goto a||goto b
  3. :a
  4. echo 发现Word程序正在运行,请先保存好Word文档再运行本程序!即将退出程序……
  5. ping -n 10 127.0 >nul
  6. exit
  7. :b
  8. echo  没有发现Word程序,安装正在进行……
  9. pause
复制代码
对于第2行的代码不太理解,不知哪位帮解释一下?

TOP

回复 7# tangqingfu


    如果当前进程列表里面能找到word进程,就跳转到标签a继续执行,否则就转到标签b继续执行。

TOP

回复 8# Python

谢谢python兄的解答!

TOP

回复 9# tangqingfu


    其实关键是&& 和 ||的应用,&&表示前面的命令执行成功则执行&&后的命令,而||正好相反,前面的命令失败,则执行||后面的命令,

&& || 非常好用!

TOP

回复 10# gobi918

谢谢gobi918兄的指点!

TOP

返回列表