Crie um arquivo de lote para executar a lista de tarefas e anexe sua saída ao log.txt

1

Estou tentando criar um arquivo de lote para executar a lista de tarefas a cada 3 minutos e registrá-lo no log.txt. Sou muito novo em arquivos em lote e gostaria de saber onde estou errado no meu arquivo de lote.

@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
    
por Michelle Ashwini 12.10.2015 / 04:23

1 resposta

0

Acho que esta linha está inacabada:

if not goto createLog

Eu simplifiquei um pouco e usei timeout em vez de 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
    
por 12.10.2015 / 05:47