2014-03-26 54 views
0

對不起,這個糟糕的標題,我真的不知道如何適合我的問題成幾句話。批處理 - 執行命令符合IF程序輸出critera

這可能看似微不足道的你們,但我想自動執行是這樣的任務:

  • 檢查是否有一定的可執行存在
  • 如果它存在,運行可執行文件,它有兩種可能的結果:
    • 發現更新。
    • 更新未找到。
  • 如果結果A,運行某個命令。如果結果B,運行另一個命令。

可執行文件在命令行窗口中提供了一個輸出,但我擱置如何使IF命令讀取輸出並使用它。

英語不是我的第一語言,我的詞彙量相當有限,所以如果有些事情不清楚,請告訴我。

+0

什麼操作系統是這是爲了?你試過什麼了?你收到任何錯誤信息了嗎? –

+0

對不起。這應該在Windows 7上運行,最終運行在Windows 8上。我一直在嘗試閱讀FOR命令,但我似乎無法將其包圍。這是我第一次製作這樣的「複雜」腳本。 – user3465047

+2

您是否嘗試過檢查'Powershell'作爲'cmd'的可能替代方案?此外,它看起來像'for'命令是爲了這樣使用:'爲%%文件在(myfile.txt myotherfile.txt more.txt)DO複製%%文件C:\ myfolder' http:// www .computerhope.com/forhlp.htm http://technet.microsoft.com/en-us/library/bb490890.aspx –

回答

0

if exist path\filename.ext anycommand檢查文件是否存在,如果是,則執行anycommand

anycommand >temp.txt命令的輸出寫入文本文件。

set /p variable=<temp.txt文本文件的內容寫入到一個變量(井,至少所述第一線)

if "%variable%"=="Update not found" othercommand運行othercommand,如果%變量%等於「更新未找到」

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