建立一個批次檔來執行任務清單並將其輸出附加到 log.txt

建立一個批次檔來執行任務清單並將其輸出附加到 log.txt

我正在嘗試建立一個批次檔以每 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

相關內容