如何编写批处理文件
批处理文件(batch file)包含一系列 DOS命令,通常用于自动执行重复性任务。
用户只需双击批处理文件便可执行任务,而无需重复输入相同指令。编写批处理文件非常简单,但难点在于确保一切按顺序执行。编写严谨的批处理文件可以极大程度地节省时间,在应对重复性工作时尤其有效。
步骤
注意:Linux 系统下的解决方案为 shell 脚本,而非批处理文件。想要了解如何在 Linux 系统下编写 shell 脚本,请参阅这份指南。1.打开记事本程序
记事本程序可用来以文本文件格式编写代码,并将写好的代码以批处理文件格式保存。单击“开始”→“应用程序”→“记事本”,或在运行对话框中输入 notepad 打开程序。
2.学习一些基本的批处理命令
批处理文件需要运行一系列 DOS 命令,因此批处理文件的命令与 DOS 命令较为相似。以下是一些较为重要的命令:
•ECHO ---------------------------- 隐藏通常显示的文字
• @ECHO OFF ------------------ 用默认程序打开一个文件
• START --------------------------- 用默认程序打开一个文件
• REM ------------------------------ 在程序中插入一个注释行
• MKDIR/RMDIR ---------------- 创建/删除目录
• DEL - -----------------------------删除一个或多个文件
• COPY ---------------------------- 复制一个或多个文件
• XCOPY ---------------------------为复制文件添加更多选项
• FOR/IN/DO - --------------------对文件进行说明
• TITLE - ---------------------------编辑窗口标题
3.编写程序以创建目录
学习创建批处理文件的一个简单方法,便是首先专注于完成一项基本任务。例如,可以利用批处理文件快速创建多个目录:
"
MKDIR f:\example1
MKDIR f:\example2
"
4.保存文件
输入代码后,便可将文件以批处理文件类型保存。点击“文件”→“另存为”。在下拉菜单中点击“保存类型”,选择“所有文件”,为程序输入一个名字,以 .bat 或 .cmd 格式结尾。
最后,为选择编码类型为ANSI,然后保存文件。
5编写基础备份程序
批处理文件非常适合运行多个命令,若配置其运行多次则效果更佳。通过 XCOPY 命令,用户可以创建一个批处理文件,从选定文件夹中复制文件至备份文件夹,且仅会覆盖最近一次复制时更新的文件。
"
@ECHO OFF
XCOPY c:\original c:\backupfolder /m /e /y
"
这将把original文件夹中的文件复制到backupfolder文件夹中。用户也可将其替换为任意路径。
/m代表仅复制更新过的文件,/e代表列出目录中的所有子目录都会被拷贝,/y代表每次文件被覆盖,屏幕上都将出现确认信息。
6.保存文件
输入代码后,便可将文件以批处理文件类型保存。点击“文件”→“另存为”。
• 在下拉菜单中点击“保存类型”。
• 选择“全部文件”。
• 为程序输入一个名字,以.bat或.cmd格式结尾。
7编写高级备份程序
把文件从一个文件夹复制到另一个当中固然不错,但如果要同时将文件分门别类,便需要 FOR/IN/DO 命令。这个命令可以用来通过扩展判断文件去向。
"
@ECHO OFF
cd c:\source
REM 这是你想要排序的文件目录
FOR %%f IN (*.doc *.txt) DO XCOPY c:\source\"%%f" c:\text /m /y
REM 这行命令会把所有的.doc文件从c:\source移动到c:\text
REM %%f 是一个变量
FOR %%f IN (*.jpg *.png *.bmp) DO XCOPY C:\source\"%%f" c:\images /m /y
REM 这行代码会把所有的.jpg .png .bmp图片文件从c:\source移动到c:\images
"
8保存文件
输入代码后,便可将文件以批处理文件类型保存。点击“文件”→“另存为”,
• 在下拉菜单中点击“保存类型”。
• 选择“全部文件”。
• 为程序输入一个名字,以.bat或.cmd格式结尾
小提示
• 如果你的文件路径里包含空格,记得使用引号,例如"C:\Documents and Settings\"。• 在Windows 2000或之后的系统中,批处理文件也可能是.cmd格式的。它们在执行的时候并无不同,只不过.cmd文件采用32数位执行,而.bat文件采用16数位。
• 你可以试着用一些第三方编辑器来编辑批处理文件,例如 UltraEdit。不过对简单的文件来说,自己直接写反而更省时间。