第一、Windows bat 批处理文件 编写

如何编写批处理文件

批处理文件(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。不过对简单的文件来说,自己直接写反而更省时间。

  第二、批处理文件 打包zip

指令的结构: 

用法:     rar <命令> -<开关 1> -<开关 N> <压缩文件> <文件...>               <@列表文件...> <解压路径\> 

例如:

rar a -df %filename%.rar %filename%.dmp

表示的是,将某个dmp文件打包为rar.

参数说明:    

      a    添加文件到压缩文件中    

      -k   锁定压缩文件    

      -s   产生固体存档,这样可以增大压缩比    

      -r   包括子目录    

      -m1 设置压缩比       

      -m0   存储      添加到压缩文件时不压缩文件。       

      -m1   最快      使用最快方式(低压缩)       

      -m2   较快      使用快速压缩方式       

      -m3   标准      使用标准(默认)压缩方式       

      -m4   较好      使用较好压缩方式(较好压缩,但是慢)       

      -m5   最好      使用最大压缩方式(最好的压缩,但是最慢)       

      -ep  从名称中排除路径       

      -ep1从名称中排除基本目录  我用它来压缩只是最终目录中的文件,在解压 

             后不包括E:\wwwroot\Web\ 这样的路径.

 

REM 打包zip
@ECHO OFF
set year=%date:~0,4%
set month=%date:~5,2%
set day=%date:~8,2%
 ::set hour=%time:~0,2%
 ::set min=%time:~3,2%
set curdate=%year%%month%%day%%hour%%min%
"D:\Softs\WinRAR\Rar.exe" a -r -s -ml dabao.zip_%curdate%.zip .\aaa\*

REM 这是WinRARRar.exe,   .\aaa\* 是批处理文件所在的目录下的aaa文件下面的所有文件,

 "D:\Softs\Haozip\Haozip.exe" a -r -s -ml dabao.zip_%curdate%.zip .\aaa\*

REM 这是haozip

 

注意事项:

缩的时候最好在命名中加上时间,免得多次打包文件覆盖。

龙腾一族至尊龙骑