迴圈遍歷檔案集中的每一行
以下內容將回顯檔案 C:\scripts\testFile.txt
中的每一行。空白行不會被處理。
for /F "tokens=*" %%A in (C:\scripts\testFile.txt) do (
echo %%A
rem do other stuff here
)
更高階的示例顯示,如何從受限檔案集資料中匯出 FOR 迴圈,可以用於重定向批量執行,同時將搜尋到的內容儲存到檔案中:
@echo off
setlocal enabledelayedexpansion
for /f %%i in ('dir "%temp%\test*.log" /o:-d /t:w /b') do (
set "last=%temp%\%%i"
type !last! | find /n /i "Completed" >nul 2>&1 >> %temp%\Completed.log ^
&& (echo Found in log %%i & goto :end) || (echo Not found in log %%i & set "result=1"))
:: add user tasks code here
if defined result echo Performing user tasks...
:end
echo All tasks completed
exit /b
注意,命令字串被分成多個程式碼行多長,命令組用括號分隔。