中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net  论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
作者:
标题: 批量处理代码不知道那错了 上一主题 | 下一主题
cheng54550
初级用户





积分 67
发帖 26
注册 2007-5-14
状态 离线
『楼 主』:  批量处理代码不知道那错了

@echo off
:1
color 04E
cls
echo                 ★==★==★==★==★==★==★==★==★==★==★
echo                               欢迎使用
echo                        
echo                 ★==★==★==★==★==★==★==★==★==★==★
echo.              
echo                 今天是%date%, 现在是北京时间:%time%
echo.
echo                 ===========================================
echo                         请选择要进行的操作,然后按回车
echo                 ===========================================
echo.
echo                   1.清除系统垃圾文件
echo.
echo                   2.不显示系统隐藏文件
echo.
echo                   3.退出
echo.
echo                   4.
echo.
echo                   5.
echo.

:cho
set choice=
set /p choice=             请选择:
IF NOT "%Choice%"=="" SET Choice=%Choice:~0,1%
if /i "%choice%"=="1" goto 1
if /i "%choice%"=="2" goto 2
if /i "%choice%"=="3" goto 3
if /i "%choice%"=="4" goto 4
if /i "%choice%"=="5" goto 5
if /i "%choice%"=="6" goto 6
if /i "%choice%"=="7" goto 7
if /i "%choice%"=="8" goto 8
if /i "%choice%"=="9" goto 9
if /i "%choice%"=="10" goto 10
echo 选择无效,请重新输入
echo.
pause>nul
goto 1

:1
@echo off
cls
color 04E
echo -------------------------------------------------
echo 欢迎使用垃圾清理工具    奶瓶专用版

echo                                         奶瓶制作
echo -------------------------------------------------

@echo off
echo 正在清除系统垃圾文件,请稍等......
del /f /s /q %systemdrive%\*.tmp
del /f /s /q %systemdrive%\*._mp
del /f /s /q %systemdrive%\*.log
del /f /s /q %systemdrive%\*.gid
del /f /s /q %systemdrive%\*.chk
del /f /s /q %systemdrive%\*.old
del /f /s /q %systemdrive%\recycled\*.*
del /f /s /q %windir%\*.bak
del /f /s /q %windir%\prefetch\*.*
rd /s /q %windir%\temp & md %windir%\temp
del /f /q %userprofile%\cookies\*.*
del /f /q %userprofile%\recent\*.*
del /f /s /q "%userprofile%\Local Settings\Temporary Internet Files\*.*"
del /f /s /q "%userprofile%\Local Settings\Temp\*.*"
del /f /s /q "%userprofile%\recent\*.*"
echo 清除系统LJ完成!垃圾已吃饱欢迎下次使用!
echo ---------------------------------------------------
echo 欢迎使用垃圾清理工具   清除系统LJ完成!

echo                                            奶瓶制作
echo ---------------------------------------------------
echo 请按回车键
pause>nul
goto 1

:2
@echo off
cls
echo 不显示隐藏文件...
reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced" /v Hidden /t reg_dword /d 00000000 /f
reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced" /v HideFileExt /t reg_dword /d 00000001 /f
reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced" /v ShowSuperHidden /t reg_dword /d 00000000 /f
echo.
echo 不显示隐藏文件成功,按任意键返回!
pause >nul
goto top

:3
exit

-------------------------------
我故意输错选择,比如5或9什么的,开始提示选择无效,请重新输入,在按确定有运行第1个了,清除系统垃圾文件。

2007-6-9 22:02
查看资料  发短消息 网志   编辑帖子  回复  引用回复
wudixin96
银牌会员





积分 1928
发帖 931
注册 2007-1-6
状态 离线
『第 2 楼』:  

这里的标签只有1、2、3,哪来5、6、7、8、9????

2007-6-9 23:18
查看资料  发短消息 网志   编辑帖子  回复  引用回复
cheng54550
初级用户





积分 67
发帖 26
注册 2007-5-14
状态 离线
『第 3 楼』:  

echo                   1.清除系统垃圾文件
echo.
echo                   2.不显示系统隐藏文件
echo.
echo                   3.退出
echo.
echo                   4.
echo.
echo                   5.

就算在这里加上也一 样啊

2007-6-9 23:21
查看资料  发短消息 网志   编辑帖子  回复  引用回复
lianjiang2004
金牌会员





积分 3946
发帖 1884
注册 2006-1-20
状态 离线
『第 4 楼』:  

找一个现成的看看。



Windows 一键还原
http://www.yjhy.com
2007-6-10 07:10
查看资料  发短消息 网志   编辑帖子  回复  引用回复
wudixin96
银牌会员





积分 1928
发帖 931
注册 2007-1-6
状态 离线
『第 5 楼』:  

:cho
set choice=
set /p choice=             请选择:
IF NOT "%Choice%"=="" SET Choice=%Choice:~0,1%
if /i "%choice%"=="1" goto 1
if /i "%choice%"=="2" goto 2
if /i "%choice%"=="3" goto 3
if /i "%choice%"=="4" goto 4
if /i "%choice%"=="5" goto 5
if /i "%choice%"=="6" goto 6
if /i "%choice%"=="7" goto 7
if /i "%choice%"=="8" goto 8
if /i "%choice%"=="9" goto 9
if /i "%choice%"=="10" goto 10
echo 选择无效,请重新输入
echo.
pause>nul
goto 1

问题一、SET Choice=%Choice:~0,1%
            所以if /i "%choice%"=="10" goto 10这里choice取不到10。只取到1。

问题二、
echo 选择无效,请重新输入
echo.
pause>nul
goto 1
这里表示即使输入错误,也跳到1的标签处。
干嘛不改成
echo 选择无效,请重新输入
echo.
pause>nul
goto cho


2007-6-10 08:17
查看资料  发短消息 网志   编辑帖子  回复  引用回复
cheng54550
初级用户





积分 67
发帖 26
注册 2007-5-14
状态 离线
『第 6 楼』:  

@echo off
:cho
color 04E
cls
echo                 ★==★==★==★==★==★==★==★==★==★==★
echo                               欢迎使用
echo                        
echo                 ★==★==★==★==★==★==★==★==★==★==★
echo.              
echo                 今天是%date%
echo.
echo                 现在是北京时间%TIME%
echo.
echo                 ===========================================
echo                         请选择要进行的操作,然后按回车
echo                 ===========================================
echo.
echo                   1.清除系统垃圾文件
echo.
echo                   2.不显示系统隐藏文件
echo.
echo                   3.退出
echo.
echo                   4.
echo.
echo                   5.
echo.
echo                   6.
echo.
echo                   7.
echo.

:cho
set choice=
set /p choice=             请选择:
IF NOT "%Choice%"=="10" SET Choice=%Choice:~0,10%
if /i "%choice%"=="1" goto 1
if /i "%choice%"=="2" goto 2
if /i "%choice%"=="3" goto 3
if /i "%choice%"=="4" goto 4
if /i "%choice%"=="5" goto 5
if /i "%choice%"=="6" goto 6
if /i "%choice%"=="7" goto 7
if /i "%choice%"=="8" goto 8
if /i "%choice%"=="9" goto 9
echo 选择无效,请重新输入
echo.
pause>nul
goto cho

:1
@echo off
cls
color 04E
@echo off
echo 正在清除系统垃圾文件,请稍等......
del /f /s /q %systemdrive%\*.tmp
del /f /s /q %systemdrive%\*._mp
del /f /s /q %systemdrive%\*.log
del /f /s /q %systemdrive%\*.gid
del /f /s /q %systemdrive%\*.chk
del /f /s /q %systemdrive%\*.old
del /f /s /q %systemdrive%\recycled\*.*
del /f /s /q %windir%\*.bak
del /f /s /q %windir%\prefetch\*.*
rd /s /q %windir%\temp & md %windir%\temp
del /f /q %userprofile%\cookies\*.*
del /f /q %userprofile%\recent\*.*
del /f /s /q "%userprofile%\Local Settings\Temporary Internet Files\*.*"
del /f /s /q "%userprofile%\Local Settings\Temp\*.*"
del /f /s /q "%userprofile%\recent\*.*"
echo ---------------------------------------------------
echo 清除系统LJ完成!垃圾已吃饱欢迎下次使用!
echo ---------------------------------------------------
echo 请按回车键
pause>nul
goto cho

:2
@echo off
cls
echo 不显示隐藏文件...
reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced" /v Hidden /t reg_dword /d 00000000 /f
reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced" /v HideFileExt /t reg_dword /d 00000001 /f
reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced" /v ShowSuperHidden /t reg_dword /d 00000000 /f
echo.
echo 不显示隐藏文件成功,按任意键返回!
pause >nul
goto cho

:3
exit

----------------------------------
echo 选择无效,请重新输入
echo.
pause>nul
goto cho
--------------------------------------
我要故意输入错误的话这句话更本就没用了,比如我输入10,直接就消失了。
5555我笨,不好意思。

2007-6-10 11:44
查看资料  发短消息 网志   编辑帖子  回复  引用回复
wudixin96
银牌会员





积分 1928
发帖 931
注册 2007-1-6
状态 离线
『第 7 楼』:  

IF NOT "%Choice%"=="10" SET Choice=%Choice:~0,10%
这句有必要吗?

而且发现有cho标签两个。如果goto cho的话,应该跳往何处??

2007-6-10 13:59
查看资料  发短消息 网志   编辑帖子  回复  引用回复

请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: