bat脚本的基本关键字介绍及脚本实例

正常情况下将手工操作的行为转换为DOS命令,然后放入到.bat文件中就完成了一键脚本的制作,本文中的一键备份&清理脚本仅作为抛砖引玉的作用,主要目的用于学习下bat脚本的基本关键字

所属分类 运维

相关标签 脚本WindowsDOS

关于.bat脚本说明

.bat脚本主要用于Windows系统执行的脚本文件。

实际就是将人为的系统操作使用DOS命令集合起来,通过脚本来完成自己想做的事情。

只需要整理清自己执行任务的步骤,一步步写命令,附带一些控制语句,一个.bat脚本就完成了。

当然,本文脚本仅作为抛砖引玉作用,可以提供一个制作.bat脚本的思路

基本关键字

本文不会详细描述系统行为所对应的DOS命令,主要针对bat脚本中一些关键字和词做解释。

  1. REM 和 :: (注释,以此开头的字符串会被认为脚本注释)
  2. ECHO 和 @ (打开或关闭执行回显,格式echo [{ on|off }],注意@字符放在命令前将关闭该命令回显,无论此时echo是否为打开状态)
  3. PAUSE (暂停,停止系统命令的执行并显示下面的内容,一般用作按键提示)
  4. ERRORLEVEL (程序返回码,通过%errorlevel%可以取到上一句命令的返回码)
  5. TITLE (设置窗口标题,title 窗口标题名)
  6. COLOR (设置默认的控制台前景和背景颜色,color fc 白色背景红色前景)
  7. mode (配置系统设备,该命令具备很多功能)
  8. GOTO 和 : (跳转,于:搭配使用,如goto jump和:jump,程序执行到goto jump会直接调到:jump向后执行,可用此做循环)
  9. FIND (文件中搜索字符串,基础用法 find 字符串 文件名)
  10. START (批处理中调用外部程序的命令,start gogo.exe,一般情况脚本不会因此停止会继续向下执行)
  11. assoc 和 ftype (设置文件拓展名和文件类型的关联,一般会用于编辑器或者播放器等设置脚本)
  12. pushd 和 popd (切换当前目录,pushd d:mp4保存一个目录,popd恢复并切换到该目录,一般会用于如记住安装目录)
  13. CALL (调用另一个批处理,当另一个批处理执行完后,再继续执行原来的批处理)
  14. shift (更改批处理文件中可替换参数的位置)
  15. IF (条件判断语句,这个不用多解释)
  16. setlocal 与 变量延迟 (建议单独深入了解)
  17. ATTRIB (显示或更改文件属性)

实例代码

在bat脚本中:号后面跟的内容是注释,执行的时候是会跳过。

:关闭控制台打印
@echo off
:获取当前日期,date获取日期DOS命令:20151109星期四,~0,4表示截取第0位的后四位(2015),~5,2(11),~8,2(09)
set ThisDay=%date:~0,4%%date:~5,2%%date:~8,2%
set /a YestDays=%ThisDay%-1
:ThisDay结果是20151109,昨天的日期字符20151108(跨月的时候有问题)
md D:MebugsPackageHistory%YestDays%Service
:进入归档路径
cd /d D:MebugsPackageService
:如果识别到昨天的归档包,进行拷贝到创建好的昨日备份
if exist MEBUGS_PLUS_%YestDays%.zip (
copy /y MEBUGS_PLUS_%YestDays%.zip D:MebugsPackageHistory%YestDays%Service
)
:删除昨天的文件
del *_%YestDays%.zip

实际上我一开始使用ANT编译脚本实现归档之前的备份,那样操作是非常Easy的。

但是由于逻辑组网(WLAN)的原因,编译环境没有办法跨子网进行文件操作。

这个.bat脚本最终通过Windows定时任务,在每天00:05自动执行。

跨月的时候,%ThisDay%-1这个计算结果有问题,但是,懒得改了Orz

米虫

做一个有理想的米虫,伪全栈程序猿,乐观主义者,坚信一切都是最好的安排!

本站由个人原创、收集或整理,如涉及侵权请联系删除

本站内容支持转发,希望贵方携带转载信息和原文链接

本站具有时效性,不提供有效、可用和准确等相关保证

本站不提供免费技术支持,暂不推荐您使用案例商业化

选择个人头像

昵称

邮箱

QQ

网址

评论提示

  • 头像:系统为您提供了12个头像自由选择,初次打开随机为你选择一个
  • 邮箱:可选提交邮箱,该信息不会外泄,或将上线管理员回复邮件通知
  • 网址:可选提交网址,评论区该地址将以外链的形式展示在您的昵称上
  • 记忆:浏览器将记忆您已选择或填写过得信息,下次评论无需重复输入
  • 审核:提供一个和谐友善的评论环境,本站所有评论需要经过人工审核