批处理 - 执行命令符合IF程序输出条件

时间:2014-03-26 16:17:36

标签: batch-file

对于糟糕的标题感到抱歉,我真的不知道如何将我的问题简单化为几句。

这对你们来说可能看起来微不足道,但是我试图自动执行类似这样的任务:

  • 检查是否存在某个可执行文件
  • 如果存在,请运行可执行文件,该结果有两种可能的结果:
    • 找到更新。
    • 未找到更新。
  • 如果结果A,运行某个命令。如果结果B,则运行另一个命令。

可执行文件在命令行窗口中提供输出,但是我对如何使IF命令读取输出并使用它进行了搁浅。

英语不是我的第一语言,我对此的词汇量相当有限,所以如果有事情不清楚,请告诉我。

2 个答案:

答案 0 :(得分:0)

这些内容可能是您正在寻找的东西:(这是一个例子,而不是确切的程序)

set file_path=C:\Users\Atyai\Desktop\ExampleFile.bat
if exist %file_path% echo Update Found. && ::Then put your command right here
if not exist %file_path% echo Update Not Found. && ::Put your other command here

这样做,就是当文件存在时,它回应"更新发现"然后我为你的第二个命令留下了一些空间。在文件不存在的情况下,它回应"未找到更新。" 我给你的文件路径(第一行)需要用你自己的文件路径替换。

这可能会提供一些帮助: http://ss64.com/nt/if.html

答案 1 :(得分:0)

if exist path\filename.ext anycommand检查,如果文件存在,如果是,则执行anycommand

anycommand >temp.txt将命令的输出写入文本文件。

set /p variable=<temp.txt将文本文件的内容写入变量(好吧,至少是第一行)

if "%variable%"=="Update not found" othercommand运行其他命令,如果%variable%等于&#34;未找到更新&#34;