Я пытаюсь создать пакетный файл для выполнения tasklist каждые 3 минуты и записать его в log.txt. Я новичок в пакетных файлах и хотел бы узнать, где я допустил ошибку в своем пакетном файле.
@echo off
set "CURRENT_DIR=C:\Documents and Settings\Administrator\My Documents\Downloads\"
:checkLog
if exist "%CURRENT_DIR%\log.txt" goto writeLog
echo Log file exists. Appending data.
if not goto createLog
:createLog
echo Creating log.txt
echo >"%CURRENT_DIR%\log.txt"
:writeLog
tasklist >> "%CURRENT_DIR%\log.txt"
goto loop
:loop
sleep 3
goto writeLog
решение1
Я думаю, что эта строка незакончена:
if not goto createLog
Я немного упростил его и использовал timeout
вместо sleep
:
@echo off
set "CURRENT_DIR=C:\Documents and Settings\Administrator\My Documents\Downloads\"
if not exist "%CURRENT_DIR%\log.txt" (
echo Creating log.txt
echo >"%CURRENT_DIR%\log.txt"
) else (
echo Log file exists. Appending data.
)
:writeLog
tasklist >> "%CURRENT_DIR%\log.txt"
timeout /t 3 > nul
goto writeLog