Batch-如果基于文件/网站的陈述打开

时间:2015-09-17 22:52:35

标签: windows batch-file cmd

在我之前的问题Batch if statements based on opening a program中,我询问了如何根据打开程序制作批处理if语句。

我可以根据以下内容制作批处理文件IF语句:

  1. 资源管理器中的文件路径:例如" C:\用户\管理员\桌面\"

  2. 文件:例如" James.csv"

  3. 网站:例如" http://www.google.com"

  4. 让我的问题更清楚一点:

    @echo off
    Set WinProcess1=D:\PFI.vbs
    Set WinProcess2=c:\
    Set WinProcess3=http://www.google.com
    
    :props
    tasklist /FI "IMAGENAME eq %WinProcess1%" | find /C /I "%WinProcess1%" >nul
    if not ErrorLevel 1 (taskkill /f /im %WinProccess1% & echo a )
    tasklist /FI "IMAGENAME eq %WinProcess1%" I find /C /I "%WinProcess1%" >nul 
    if not ErrorLevel 1 (echo b & timeout /T 1 /NOBREAK >NUL)
    tasklist /FI "IMAGENAME eq %WinProcess2%" | find /C /I "%WinProcess2%" > nul
    if not ErrorLevel 1 (echo destroy app & timeout /T 1 /NOBREAK >nul )
    tasklist /FI "IMAGENAME eq %WinProcess3%" | find /C /I "%WinProcess3%" > nul
    if not ErrorLevel 1 ( echo c & timeout /T 1 /NOBREAK >nul )
    goto props 
    

    如果文件/网站/路径已打开,此循环将仅检查winprocess1,2, or 3是否正在运行,echo a,b, or c。如果没有,那么它会再次运行。

    编辑:打开,我的意思是程序正在使用它。例如,如果您尝试在浏览器打开时通过资源管理器重命名文档,它会向您显示一条消息,指出某个程序(例如)Microsoft Word正在使用它。

0 个答案:

没有答案