先简单说一下什么是DOS和批处理。
DOS是指磁盘操作系统,在DOS的世界里,没有图标,没有窗口,所以也不需要鼠标,与电脑的交互通过鼠标输入命令字符完成。在现代windows流行的时代,doS是不是就一无是处了呢?当然不是,DOS可以作为一种不错的工具存在,特别是不能登录到Windows系统时,因为其完成系统的安装门槛较低,可以不需要硬盘(Windows系统因体积较大,所以需要安装到硬盘,当然PE系统也可以直接由光盘或U盘启动)。其对系统的管理,对磁盘的操作,对网络的管理都具有Windows所不具有的一些优势。
批处理简单理解就是将单个的DOS命令串起来,放到一个文件中,批量执行DOS命令。当然,类似于程序设计语言,也可以应用变量、条件选择、循环等,所以在一些特定的场合,功能也十分强大。
下面以网上流行的“清理系统垃圾文件代码”,新建一个批处理文件,来清理系统垃圾,来看一下DOS命令和批处理的梗概。
1 建立“清理系统垃圾”的批处理文件;
1.1 新建文本文档,复制粘贴以下内容:
@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 SettingsTemporary Internet Files*.*"
del /f /s /q "%userprofile%Local SettingsTemp*.*"
del /f /s /q "%userprofile%recent*.*"
echo 清理系统垃圾完成!
echo. & pause
1.2 文件另存为“清理系统垃圾.bat”,如下对话框:
点击“保存”后,即可看到下面如下图标,双击即可运行,开始清理垃圾。
上面说过,批处理bat文件就是一串串DOS命令,上面的DOS命令其实就只有3个:
@:隐藏命令行本身的回显;
echo:允许或禁止批处理文件在执行的过程中回显命令;
del:删除文件;
前两个命令相对简单,常用在批处理中,后面的del命令因为可以通过参数控制所以显得相对复杂一点,可以打开“命令提示符”(cmd.exe)通过命令"del /?"查看。(注意上面的单行在"命令提示符"窗口也是可以执行的。)
2 应用变量、条件选择和循环的批处理(批处理重命名)
setlocal enabledelayedexpansion
set n=0
set /p name=请输入更改后的文件前缀字母部分,如输入pic,会形成如“”的名字,如不需要则直接回车:
for /f "tokens=1,2 usebackq delims=." %%A in (`dir /o:n /b`) do (
if not "%%~nA"=="%~n0" ( rem 不更改bat文件的名称;
if not "%%B"=="html" ( rem 不更改html文件的名称;
if not "%%A.%%B"=="%%A." ( rem 不更改文件夹的名称;
set /a n=n+1
if !n! lss 10 (
ren "%%A.%%B" "!name!0!n!.%%B"
) else (
ren "%%A.%%B" "!name!!n!.%%B"
)))))
3 批处理修改注册表
@echo off
echo Windows Registry Editor Version 5.00 >
echo 正在设置自动登录当前系统的帐户…
echo [hkey_local_machinsoftwaremicrosoftwindows ntcurrentversionwinlogon] >>
echo "autoadminlogon"="1" >>
echo "defaultusername"="normalaccount" >>
echo "defaultpassword"="noprivilege" >>
echo.
echo 成功将"normalaccount"帐户设置为当前自动登录的帐户!
regedit /s
del /q /f >nul
其思路是用批处理新建一个临时文档,利用此文档修改注册表实现自动登录宽带帐户。
4 批处理自动建立目录网页
echo ^<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" ";^> >a.html
echo ^<html xmlns=";^> >>a.html
echo ^<base target="_blank" /^> >>a.html
echo ^<head^> >>a.html
echo ^<title^>contents^</title^> >>a.html
echo ^<style type=text/css^> >>a.html
echo div{width^:74.125^%%;} >>a.html
echo div{margin^:auto;} >>a.html
echo div{margin^:auto;} >>a.html
echo li{width^:33^%%;} >>a.html
echo li{float^:left;} >>a.html
echo li{height^:32px;} >>a.html
echo li{line-height^:32px;} >>a.html
echo li{overflow^:hidden;} >>a.html
echo li{white-space^:nowrap;} >>a.html
echo li{text-overflow^:ellipsis;} >>a.html
echo img{border^:0 red solid;} >>a.html
echo a:link{text-decoration: none; color:#000;} >>a.html
echo ^</style^>^</head^> >>a.html
echo ^<body^>^<div^> >>a.html
for /f "tokens=1,2 usebackq delims=." %%a in (`dir /o:n /b`) do (
if not "%%a.%%b"=="%%a." (
if not "%%a.%%b"=="a.html" (
echo ^<li^>^<a href="%%a.%%b"^>%%a.%%b^</a^>^</li^> >>a.html
)
)
)
for /f "tokens=1,2 usebackq delims=." %%a in (`dir /o:n /b`) do (
if "%%a.%%b"=="%%a." (
echo ^<li^>^<a href="%%a;^>%%a^</a^>^</li^> >>a.html
)
)
echo ^</div^> >>a.html
echo ^</body^> >>a.html
echo ^</html^> >>a.html
通过以上一些批处理的实例可见,一些简单的DOS命令通过条件选择和循环的组合,也可以完成一些复杂的任务,关键就是可以自动化,一切显得快捷、准确。
1.文章《怎么在dos删除文件——dos恢复删除文件》援引自互联网,为网友投稿收集整理,仅供学习和研究使用,内容仅代表作者本人观点,与本网站无关,侵删请点击页脚联系方式。
2.文章《怎么在dos删除文件——dos恢复删除文件》仅供读者参考,本网站未对该内容进行证实,对其原创性、真实性、完整性、及时性不作任何保证。
相关推荐
- . 现代买票为什么带上携程保险
- . 潮阳怎么去广州南站
- . 湖南马拉河怎么样
- . 烧纸为什么到三岔路口
- . 百色为什么这么热
- . 神州租车怎么样
- . 芜湖方特哪个适合儿童
- . 护肤品保养液是什么类目
- . 早晚的护肤保养有哪些项目
- . 女孩护肤品怎么保养的最好