一个简单的dosDemo:(所有命令key都可以通过在cmd窗口下/ ?得到help信息,如: set /?)
@echo off setlocal EnableDelayedExpansion set str=test echo!str!
1:逐行读取文件
@echo off setlocal EnableDelayedExpansion set path=targetFile.txt for /f %%i in (%path%) do ( echo %%i )
逐行读取主要用到for ,如下转载链接有详细说明:http://www.cnblogs.com/focusHr/archive/2009/02/05/1384751.html
2:字符串截取
@echo off setlocal EnableDelayedExpansion ::需求:(java)通过全包路径拷贝相应class set str=com.fyj.test.HttpTest rem 字符替换:将"."替换成"\" set str=!str:.=\! ::原理:以最后一个"\"分割,第一部分就是类路径,第二部分就是类名称 rem set /a local=0 set /a fLen=0 :loop ::%str:~-8,8% -8(local)从后数第8个位置开始,截取8(fLen)个字符 set /a local-=1 set /a fLen+=1 rem 从str中最后循环每一个字符得第一个"\"出现的位置,然后分割 set localStr=!str:~%local%,1! if "%localStr%"=="\" (goto loopNext) else (goto loop) :loopNext ::path echo !str:~0,%local%! set /a local+=1 ::文件名 echo !str:~%local%,%fLen%!
3.得到字符串长度
@echo off setlocal EnableDelayedExpansion set sstr=com.fyj.test.HttpTest set index=0 set str=!sstr:~%index%,1! :loop set /a index+=1 set str=!sstr:~%index%,1! if defined str (goto loop) else (goto loopEnd) ::if "%str%"=="" (goto loopEnd) else (echo %str%&goto loop) :loopEnd echo 字符串: %sstr% echo 长度: %index%
转载:http://www.daohei.com/post/p.asp?/=2960
批处理命令详解,转载:http://www.cnblogs.com/fjchenq/archive/2007/08/06/845079.html
浙公网安备 33010602011771号