bat脚本的学习

因为办公的环境是在windows下,为了方便工作,还是要熟悉一下Bat脚本的书写(因为发现平时还是很常写bat的)!
一、BAT命令的简介:
1.批处理文件是一个“.bat”结尾的文本文件,这个文件的每一行都是一条DOS命令。可以使用任何文本文件编辑工具创建和修改。
2.批处理的编程能力远不如C语言等编程语言,也十分不规范。
3.每个编写好的批处理文件都相当于一个DOS的外部命令,把它所在的目录放到DOS搜索路径(path)中,即可在任意位置运行。
4.C:\AUTOEXEC.BAT 是每次系统启动时都会自动运行的,可以将每次启动时都要运行的命令放入该文件中(只存在于DOS与Win9x现代的Win NT不存在)。
5.大小写不敏感(命令符忽略大小写)
6.批处理的文件扩展名为 .bat 或 .cmd。
7.在命令提示下键入批处理文件的名称,或者双击该批处理文件,系统就会调用Cmd.exe来运行该文件。

   %SystemRoot%   ===    C:\WINDOWS    (%windir% 同样)
   %ProgramFiles% ===    C:\Program Files
   %USERPROFILE%  ===    C:\Documents and Settings\Administrator  (子目录有“桌面”,“开始菜单”,“收藏夹”等)
   %APPDATA%      ===    C:\Documents and Settings\Administrator\Application Data
   %TEMP%         ===    C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp  (%TEM% 同样)
   %APPDATA%      ===    C:\Documents and Settings\Administrator\Application Data
   %OS%           ===    Windows_NT (系统)
   %Path%         ===    %SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem  (原本的设置)
   %HOMEDRIVE%    ===    C:   (系统盘)
   %HOMEPATH%     ===    \Documents and Settings\Administrator

   :: 枚举当前的环境变量
   setlocal enabledelayedexpansion
   FOR /F "usebackq delims==" %%i IN (`set`) DO @echo %%i    !%%i!
二、基本命令:
a.echo命令:     控制台回显,echo off 表示在此语句后所有运行的命令都不显示命令行本身;
b.@命令:         表示不显示@后面的命令,此语句常用于开头,表示不显示所有的命令行信息,包括此句)
c.Goto命令:       goto label (label是参数,指定所要转向的批处理程序中的行,EOF,这个标签将控制转移到当前脚本文件的结尾。
不定义就退出。
d.Rem命令:        注释命令,在C语言中相当与/*...*/。
e.Pause命令:    会暂停批处理的执行并在屏幕上显示Press any key to continue...的提示,等待用户按任意键后继续。
f. call命令    :     参数: [Drive:][Path] FileName 指定要调用的批处理程序的位置和名称。filename 参数必须具有 .bat 或 .cmd 扩展名。

调用另一个批处理程序,并且不终止父批处理程序。如果不用call而直接调用别的批处理文件,那么执行完那个批处理文件后将无法返回当前文件并执行当前文件的后续命令。call 命令接受用作调用目标的标签。如果在脚本或批处理文件外使用 Call,它将不会在命令行起作用。
g.IF命令 : IF) 则条件成立,运行命令,否则运行下一句。(注意是两个等号);if exist) 如果有指定的文件,则条件成立,运行命令,否则运行下一句;if errorlevel number)if errorlevel number
h.比较运算符:
EQU - 等于 (一般使用“”)
NEQ - 不等于 (没有 “!=”,改用“ if not 1
1 ”的写法)
LSS - 小于
LEQ - 小于或等于
GTR - 大于
GEQ - 大于或等于
i、choice 命令
choice 使用此命令可以让用户输入一个字符(用于选择),从而根据用户的选择返回不同的 errorlevel,
然后配合 if errorlevel 选择运行不同的命令。

你可能感兴趣的:(脚本)