您好我有一个文本文件,我需要在其中使用最后两行作为批处理脚本中的两个变量。例子:
file.txt 包含:
Release2010
Release2011
Release2013
我需要 var1 = Release2011 和 var2 = Release2013。文件的长度会有所不同,但我总是需要最后两行。
感谢你的协助!
您好我有一个文本文件,我需要在其中使用最后两行作为批处理脚本中的两个变量。例子:
file.txt 包含:
Release2010
Release2011
Release2013
我需要 var1 = Release2011 和 var2 = Release2013。文件的长度会有所不同,但我总是需要最后两行。
感谢你的协助!
你可以试试这个:
@ECHO OFF &SETLOCAL ENABLEDELAYEDEXPANSION
FOR /f "delims=" %%a IN (file) DO (
SET "var2=!var1!"
SET "var1=%%a"
)
ECHO(var1: %var1%
ECHO(var2: %var2%
同样没有delayed expansion
:
@ECHO OFF &SETLOCAL
FOR /f "delims=" %%a IN (file) DO (
CALL SET "var2=%%var1%%"
SET "var1=%%a"
)
ECHO(var1: %var1%
ECHO(var2: %var2%
这是一种不启用延迟扩展的方法。
@ECHO OFF
FOR /F %%A IN (InFile.txt) DO (
CALL :SetSecondLastLine
SET LastLine=%%A
)
ECHO.SecondLastLine=%SecondLastLine%
ECHO.LastLine=%LastLine%
pause
GOTO :eof
:SetSecondLastLine
SET SecondLastLine=%LastLine%
GOTO:EOF