最新想学习批处理,在网上搜索信息时看到百度上的一个问题就自己写了下。 问题地址: http://zhidao.baidu.com/question/101833311 对很多东西不熟,费了一下午才完成要求,写的批处理程序如下: @rem 这个程序实现了把文件中相同行的内容提取出来 @rem 注意SetLocal与EndLocal,用它使得上面for中的环境变量不会对下面for循环中的环境变量产生影响 @rem 现在程序执行不能得到正确结果,这个与变量时延有关,同时也应该清楚理解批处理的执行顺序“至上而下 逐条执行”,逐条并不是逐行,请理解。同时还涉及到预处理机制,这个读者也应该明白 @echo off SetLocal EnableDelayedExpansion for /f "tokens=1,2,3 delims= " %%i in (test.txt) do ( @rem if "!%%j%%k!" == "ABC" ( @rem if defined %%j%%k ( if "%%j%%k" == "ABC" ( @echo %%i %%j %%k>>str_1.txt @echo comein )else ( set %%j%%k=ABC @echo not true if "!%%j%%k!" == "ABC" @echo yes )