Некоторая помощь в разработке изломов в.bat
Мой текущий файл.bat выглядит следующим образом:
@echo off
rem iTunes
tasklist /FI "IMAGENAME eq itunes.exe" /FO CSV > "C:/ForStartingStuff/ForItunes.log"
FOR /F %%A IN (' "C:/ForStartingStuff/ForItunes.log" ') DO IF %%~zA EQU 0 GOTO end
cd "C:\Program Files (x86)\iTunes"
:end
taskkill /im notepad.exe
del "C:/ForStartingStuff/ForItunes.log
rem WC3 Banlist
tasklist /FI "IMAGENAME eq WC3Banlist.exe" /FO CSV > "C:/ForStartingStuff/ForWC3Blist.log"
FOR /F %%A IN (' "C:/ForStartingStuff/ForWC3Blist.log" ') DO IF %%~zA EQU 0 GOTO end
cd "C:\Program Files (x86)\WC3Banlist"
start WC3Banlist.exe
:end
del "C:/ForStartingStuff/ForItunes.log
rem Warcraft3
tasklist /FI "IMAGENAME eq wc3.exe" /FO CSV > "C:/ForStartingStuff/ForWarcraft.log"
FOR /F %%A IN (' "C:/ForStartingStuff/ForWarcraft.log" ') DO IF %%~zA EQU 0 GOTO end
cd "C:\Program Files (x86)\Warcraft III"
start war3.exe
:end
exit
Моя цель состояла в том, чтобы иметь что-то, что открывало программу, только если они еще не были открыты. Это прекрасно работает, но одна проблема заключается в том, что мне приходится вручную закрывать окна блокнота, которые открываются, чтобы прочитать файлы журнала For****. Есть ли способ сделать эти вещи автоматически закрываются? Кстати, я бегу перспектива.
1 ответ
Попробуйте удалить пробелы в наборе файлов вашего FOR
заявление. Например:
FOR /F %%A IN ("C:/ForStartingStuff/ForWarcraft.log") DO ...
вместо
FOR /F %%A IN (' "C:/ForStartingStuff/ForWarcraft.log" ') DO