Board logo

标题: 求高手帮忙简化一个批处理 [打印本页]

作者: 59fei     时间: 2007-7-9 11:56    标题: 求高手帮忙简化一个批处理

@ECHO On&SETLOCAL ENABLEDELAYEDEXPANSION

for /f "tokens=1,2,*" %%i in ('REG QUERY "HKCU\SOFTWARE\MICROSOFT\WINDOWS\CURRENTVERSION\EXPLORER\SHELL FOLDERS" ^| FIND /I "FAVORITES"') DO (
        SET Fav_IN_SHELL_FAV=%%k
        ECHO Favorites在SHELL FOLDERS子键下的值是:
        ECHO !Fav_IN_SHELL_FAV!>>txt.tmp)
findstr /i "c:" txt.tmp
if errorlevel==1 goto lop
if errorlevel==0 goto cu

:lop

echo 错误
goto dp
pause
:cu
c:
cd\
cd "!Fav_IN_SHELL_FAV!"
pause

:dp
findstr /i "d:" txt.tmp
if errorlevel==1 goto lopd
if errorlevel==0 goto cud

:lopd
echo 错误
pause

:cud
d:
cd\
cd "!Fav_IN_SHELL_FAV!"

pause>nul
作者: 59fei     时间: 2007-7-9 12:07
在线等.............
作者: netwinxp     时间: 2007-7-25 21:11
有两点建议:
1、当发生错误时,应该是没有查询到FAVORITES的值,怎么需要那么多的处理?
2、用追加的方式添加到txt.tmp,当txt.tmp存在时可能导致错误的结果,所以最前面要添加if exist txt.tmp del txt.tmp
作者: lslsyqyq     时间: 2007-8-20 23:38
已经很简化了
个人以为 :dp  段没有必要
看清楚   txt.tmp  里面格式     用findstr查找就好了
没必要  转到  :dp