天天看点

批处理实例

@echo off 

::#########################################################################

::显示批处理的完整路径信息

echo 当前运行的%0文件的完整路径为:

echo %~dp0

echo.

pause

::#########################################################################

::修改文件夹图标

echo 为当前文件夹改图标

echo [.ShellClassInfo] > desktop.ini

echo IconResource=discover.ico,0 >> desktop.ini

echo.

echo 修改图标成功

taskkill /f /im explorer.exe

start explorer

pause

遍历当前文件侠下,所有子孙文件路径

for /r %i in (.,*) do echo %i  #子孙文件和目录 

for /r %i in (*) do echo %i #子孙文件

for /r %i in (.) do echo %i   #目录

dir /s/b #子孙文件和目录

修改文件名 Lesson (95).lrc   为  Lesson 95.lrc

@echo off

set filePath=%~dp0
setlocal enabledelayedexpansion
 
for /f "delims=(.)  tokens=1,2,3" %%i in ('dir /b !filePath*!') do (  

 if not %%i==rename ( 
  	ren "%%i(%%j).%%k" "%%i%%j.%%k" 
 )    
   
)  
	
pause
           

修改文件名 Lesson 95.lrc   为  Lesson95.lrc

@echo off
:: 使用setlocal enabledelayedexpansion后,用!!取值,否则使用%%取值

setlocal enabledelayedexpansion
set filePath=%~dp0
for /f "delims=" %%i in ('dir /b !filePath!') do (  
	set namename="%%i"
	for /f "tokens=1,2" %%j in (!namename!) do (  
		if not %%j==rename.bat (
			echo %%j%%k
			ren "%%j %%k" "%%j%%k"   
		)
	)
)  
		
)  
pause
           

按行输出当前目录文件名

@echo off

set filePath=%~dp0
setlocal enabledelayedexpansion
for /f "delims=" %%i in ('dir /b !filePath!') do (  	
	echo %%i
)  
pause
           

 查找jsp文件,替换路径

1、查找当前目录下的jsp文件
2、把反斜杠替换成斜杠
3、把“D:/workspace/webapp/admin/del/msg.jsp”替换成“http://blog.csdn.net/admin/del/msg.jsp”
@echo off 

setlocal EnableDelayedExpansion 
for /r %%i in (*.jsp) do ( 
set fPath=%%i 
set fPath=!fPath:\=/! 
set fPath=!fPath:D:/workspace/webapp=http://blog.csdn.net! 
echo !fPath! 
) 

pause;
           

继续阅读