当前位置:   article > 正文

batch批处理脚本基础

batch批处理脚本基础

闲的无聊学习一下批处理脚本,记载一下比较基础的笔记

友情提示:过于复杂的功能还是不建议使用batch来实现,毕竟人家是批处理脚本,如有需要还是正经写程序

Bat脚本其实是基于cmd命令来实现的,cmd命令也能在bat脚本中使用,例如mkdir,rename等待

这里只记录bat的基础内容

echosetpause@注释
&和&&ifforgotostart
calltimeout查询帮助

基础语句

echo

1、将后面跟随的内容输出

输出文本到控制台

echo "hello world"  

输出变量param,通常通过set 创建变量

echo %param% 

 表示换行符

echo

输出文本到txt文件中,写入方式是截断,若文件不存在会自动创建

echo "hello world" > a.txt

输出文本到txt文件中,写入方式是追加,若文件不存在会自动创建

echo "hello world" >>a.txt

2、特定功能的组合用法

启动功能“回显”

echo on 

关闭功能“回显”

echo off 

echo on/off通常会和@一起使用。 从本语句开始关闭回显

@echo off

set

显示、设置或者删除cmd控制台的环境变量

1、用作创建变量时必须初始化变量

set a= “开心超人”

显示后面的文本作为提示,并将等待用户输入

set /p param = "请输入密码:" 

2、显示变量

显示以a开头的所有变量

set

pause

暂停,按任意键继续

@

表示不显示本行,但是仍执行

注释

REM

表示注释信息,该注释信息不会显示

rem 我是注释

::

也表示注释信息,实际上":"加任意符号都可以表示无信息显示,但我们通常用::来表示注释

::我是注释

&和&&

&被用作命令分隔符,它允许在同一行中放置多个命令,这些命令会按照从左到右的顺序执行,当使用&时,前一个命令即使失败也不会影响后一个命令的执行

&&被使用时,只有当前命令成功后才会继续下一个命令

if

执行批处理程序中的条件处理

if  条件(分支1)else(分支2)

if not 条件(分支1)else (分支2)

例如

  1. :start
  2. set /p a=
  3. if not %a%==1 (
  4. echo 请输入1
  5. goto start
  6. ) else (
  7. echo 输入正确
  8. )

需要注意的是,在批处理脚本中,使用if语句进行判断有很多局限性,虽然批处理提供了一些简单的比较运算符(=),但是这些运算符的功能是基于字符串的,并不支持例如大于(>),小于(<),大于等于(>=),小于等于(<=)这些符号

在比较数字的时候,可以使用运算符(lss)小于,(leq)小于等于,(gtr)大于,(geq)大于等于,(equ)等于,(neq)不等于

for

对一组文件的每一个文件执行特定命令

下列代码来自cmd查询,大写语句是固定语句,小写的是可替换

  1. FOR [命令扩展] %%value IN <set> Do command [command-parameters]
  2. %%value 指定一个单一字母可替换参数
  3. <set> 指定一个或一组文件,可以使用通配符
  4. command 需要执行的命令
  5. [command-parameters]为特定命令指定参数或者命令行开关

例如

  1. @echo off
  2. set str=c d e f g h i j k l m n o p q r s t u v w x y z
  3. echo 当前硬盘的分区有:
  4. for %%i in (%str%) do if exist %%i: echo %%i:
  5. pause

goto

经常编程的同学都知道,这就是跳转的意思

batch脚本中使用标签进行跳转,shell脚本也类似

  1. :label
  2. ……
  3. ……
  4. goto label

start

开启新线程来执行任务,原命令照常执行

call

调用命令,当被调用的命令执行完成,返回并继续之前的命令

timeout

延迟执行

  1. @echo off
  2. set a=1
  3. ::延迟五秒输出
  4. timeout 5 >nul
  5. echo %a%
  6. pause

查询帮助

现在都4202了,遇到不明白的问题可以多上上网,灵气复苏才需要藏秘籍

傻瓜式查询帮助流程:打开百度/谷歌/必应/文心一言/chartGPT/星火讯飞……,输入自己想要实现的功能和语言环境,点击搜索。

如果觉得人工智障不行太蠢了,可以使用高手方法:wnd+r,输入cmd回车,输入help+人工智障那里查来的的语句,比如 help set,即可享受最顶级的原始人高手翻文档体验

好好好就写那么多了,别的功能去找其他参考吧

贴一个参考

https://www.cnblogs.com/jingxian666/p/16814375.html#t6

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/我家自动化/article/detail/393779
推荐阅读
相关标签
  

闽ICP备14008679号