批处理中,当for语句中使用了%%~ni后,如何将其赋值给变量var
@echoofffor/f"delims=_"%%iin('dir/b/o:n/ad"C:\ProgramFiles(x86)\ABB\TTPlatform\iStand...
@echo off
for /f "delims=_" %%i in ('dir /b /o:n /ad "C:\Program Files (x86)\ABB\TTPlatform\iStandTra"') do echo %%~nifor /f %%j in (I:\so\socp\TTPlatform\iStandTra\official_release.txt) do echo iStandTra Official release: %%j
上面两句语句实现的结果分别如下图,
我想要实现的功能是检查第一句语句执行的结果中,有没有第二句语句执行的结果,(V105,V107和V107这三个结果中是否有V107, 如果有显示Yes, 否则显示No.)
但是由于第一个for 语句中使用了%%~ni, 不知道该怎么将其赋值给变量,从而实现这个比较功能了。
请高手赐教,如果能写出程序小女子将不甚感激啊 。 展开
for /f "delims=_" %%i in ('dir /b /o:n /ad "C:\Program Files (x86)\ABB\TTPlatform\iStandTra"') do echo %%~nifor /f %%j in (I:\so\socp\TTPlatform\iStandTra\official_release.txt) do echo iStandTra Official release: %%j
上面两句语句实现的结果分别如下图,
我想要实现的功能是检查第一句语句执行的结果中,有没有第二句语句执行的结果,(V105,V107和V107这三个结果中是否有V107, 如果有显示Yes, 否则显示No.)
但是由于第一个for 语句中使用了%%~ni, 不知道该怎么将其赋值给变量,从而实现这个比较功能了。
请高手赐教,如果能写出程序小女子将不甚感激啊 。 展开
展开全部
@echo off & setlocal enabledelayedexpansion
for /f "delims=_" %%i in ('dir /b /o:n /ad "H:\Batch\test"') do echo %%~ni &set "s=!s!%%~ni"
for /f %%j in (H:\Batch\test\1.txt) do echo iStandTra Official release: %%j & set "t=%%j"
if "!s:%t%=!" == "!s!" (echo NO) else (echo YES)
pause
请及时点击【采纳回答】
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询