Bat 批处理脚本 (常用)

########## Bat 批处理脚本 ##########

=== Content ===

1. Rem 和 ::

Rem 为注释命令,能回显。
:: 为符号注释,不能回显。 %行内注释内容% ===== (不常用)(慎用)
注:
回显:
回显,就是显示正在执行的批处理命令及执行的结果等。
不回显:
与上述回显,方式相反 例如:
(在cmd上运行结果如下:)
rem hello 在下面会显示空白的一行 :: hello 在下面不会显示空白的一行

2. Echo 和 @

@ 字符 始终不回显,不论你是echo on/off  状态
@ 放在命令前即关闭回显 echo
(1)开/关 回显
echo on/off
(2)显示当前ECHO设置状态
echo
(3)输出提示信息
echo Content
(4)关闭DOS命令提示符
echo off
(5)输出空行,即相当于输入一个回车
echo .
(6)答复命令中的提问
格式: ECHO 答复语|命令文件名
例子:
C:>ECHO Y|CHKDSK/F
C:>ECHO Y|DEL A :*.*
(7)建立新文件或增加文件内容
格式:
echo 文件内容 > 文件名 ======= 在文件 中写入『文件内容』
echo 文件内容 >> 文件名 ======= 在该文件末追加『文件内容』
例子:
C:>ECHO @ECHO OFF>AUTOEXEC.BAT建立自动批处理文件
C:>ECHO C:\CPAV\BOOTSAFE>>AUTOEXEC.BAT向自动批处理文件中追加内容
C:>TYPE AUTOEXEC.BAT显示该自动批处理文件
(8)向打印机输出打印内容 或 打印控制码
格式: echo 打印机控制码>; PRN
echo 打印内容>;PRN
例子:
下面的例子是向M-1724打印机输入打印控制码。<Alt>156是按住Alt键在小键盘键入

156,类似情况依此类推:

			C:>ECHO +156+42+116>;PRN(输入下划线命令FS*t)
C:>ECHO [email=+155@]+155@>;PRN[/email](输入初始化命令ESC@)
C:>ECHO.>;PRN(换行) (9)使喇叭鸣响
C:>ECHO ^G
“^G”是在dos窗口中用Ctrl+G或Alt+007输入,输入多个^G可以产生多声鸣响。
使用方法是直接将其加入批处理文件 或 做成批处理文件调用
这里“^G”属于特殊符号的使用,请看本文后面的章节
  1. Pause

    (1)暂停 press any key to continue

    Pause

    (2)自定义停止 提示语

    格式:

    echo 其他提示语 & pause > nul

  2. errorlevel

    程序运行后返回码 echo %errorlevel%

    用处: 判断命令是否执行成功

    默认值: 0(正确)

    出错 errorlevel 会设置为 1

  3. title

    更换cmd 窗口名字

    用法:

    title 新窗口名字

  4. color

    更改cmd的 前\后景颜色属性

    用法:

    color + attr

    attr 是 两位的十六进制数,第一位为前景色,第二位则为后景色

    0 = 黑色 8 = 灰色

    1 = 蓝色 9 = 淡蓝色

    2 = 绿色 A = 淡绿色

    3 = 湖蓝色 B = 淡浅绿色

    4 = 红色 C = 淡红色

    5 = 紫色 D = 淡紫色

    6 = 黄色 E = 淡黄色

    7 = 白色 F = 亮白色

    如果没有attr 参数,则返回成cmd启动时的属性

  5. mode

    配置系统设备

例子:(更改cmd窗口大小 和 颜色)

mode con cols=80 lines=20 & color f2

  1. goto 和 :

    ":"

    用来创建标签

    用法:

    ":" + 标签名

    例子:

    if {%1}{} goto noparms

    if "%2""" goto noparms

    goto:

    跳转到某标签

    用法:

    goto 标签名

    例子:

    @echo off

    :start

    set /a var+=1

    echo %var%

    if %var% leq 3 goto start

    pause

    运行结果:

    1

    2

    3

    4

  2. start

    新开一个程序执行

    例:

    start explorer d:

    调用图形界面打开D盘

  3. if

    用法:

    (1)IF [not] ErrorLevel number command
    (2)IF [not] string1==string2 command
    (3)IF [not] Exist filename command

    例子:

    echo off
    IF EXIST autoexec.bat echo 文件存在!
    IF not EXIST autoexec.bat echo 文件不存在!
  4. %

    用法:

    (1)%变量名%

    引用变量名的值

    例子:

    set file=“test.txt” rem 注意:变量名file后的=号 和 值不要有空格

    (2)%0~%9

    表示的是从外部参数引用的值

    %0 就是程序本身,或者路径

    %1 第一个参数 ... %9 第9个参数

  5. < >& <& 重定向符

    @echo off
    echo 2005-05-01>temp.txt
    date <temp.txt
    del temp.txt

    这样就可以不等待输入直接修改当前日期

    >&,将一个句柄的输出写入到另一个句柄的输入中。
    <&,刚好和>&相反,从一个句柄读取输入并将其写入到另一个句柄输出中。

    常用句柄:0、1、2,未定义句柄:3—9

    1>nul 表示禁止输出正确的信息

    2>nul 表示禁止输出错误信息。

    其中的1与2都是代表某个数据流输入输出的地址(NT CMD 称之为句柄,MSDOS称之为设备)。

    句柄0:标准输入stdin,键盘输入

    句柄1:标准输出stdout,输出到命令提示符窗口(console,代码为CON)

    句柄2:标准错误stderr,输出到命令提示符窗口(console,代码为CON)

    其中的stdin可被<重定向,stdout可被>、>>重定向。

    我们已经知道读取文本中的内容可以用for命令,

    但如果只需要读取第一行用for命令就有点麻烦。简单的办法如下:

    @echo off
    set /p str=<%0
    echo %str%
    pause
  6. | 命令管道符

    格式:cmd1 | cmd2 | cmd3 |...

    说明:将第一条命令的结果作为第二条命令的参数来使用

    例如:

        dir C:\|find "txt"

上述命令解释: 查找C:\ 下 所有匹配的"txt"字符串

  1. ^ 转义字符

    ^相当于C语言的"/" 转义字符

  2. DOS 循环

    for 循环:

    格式:

    	for %%var in (set) do Command  [command-parameters]
    
    	command-parameters:
    有四个参数: /d /l /r /f
  3. 系统变量

    用法:

    可以通过 %系统变量名% 查看当前系统变量的值

    例子:
    %HOMEPATH%
  4. 自定义变量

    (1)自定义变量

    set 变量名=值

    (2)手动输入变量的值 set /p

    @echo off
    set /p var=请输入变量的值
    echo %var%
    pause var变量名 =号右边的是提示语,不是变量的值
  5. if...else... 条件语句

    在 if...else 语句中 还有判断数字的符号:

    EQU - 等于
    NEQ - 不等于
    LSS - 小于
    LEQ - 小于或等于
    GTR - 大于或等于

    例子:

    IF EXIST filename (
    del filename
    ) ELSE (
    echo filename missing
    )
  6. random (随机数%random%)的应用技巧

例子:

          @echo off
setlocal enabledelayedexpansion
for /L %%i in (1 1 5) do (
set /a randomNum=!random!%%100
echo 随机数:!randomNum!
)
pause

Bat 脚本(常用命令)的更多相关文章

  1. Shell 脚本常用命令

    Shell脚本是Linux开发工作中常用的工具,但是我一直没有找到一个适合自己的简明扼要的HandBook.在工作过程中整理了一下,贴在这里已备查看. 1           Shell中的特殊符号 ...

  2. shell脚本常用命令汇总

    一.shell脚本概述和入门 (1)shell脚本是一个命令行解释器,它接收应用程序/用户命令,然后调用操作系统内核 (2)shell脚本的常用执行方式: 第一种:采用bash或sh+脚本的相对路径或 ...

  3. oracle数据库执行脚本常用命令总结

    1. 执行一个SQL脚本文件 代码如下 复制代码 sqlplus user/pass@servicename<file_name.sql或SQL>start file_names或SQL& ...

  4. Shell脚本常用命令简介

    格式化日期yyyy-mm-dd hh:mm:ss显示 date "+%Y-%m-%d %H:%M:%S" 将内容写入到新文件 echo "hello">a ...

  5. 【原创】Linux基础之Shell脚本常用命令

    #!/bin/sh 1 取脚本参数 $# 参数个数$0 当前脚本名$1 第1个参数$n 第n个参数$* 所有参数$@ 所有参数$? 上个命令的状态$$ 当前pid 2 日期 $ dateWed Mar ...

  6. bat脚本简单命令

    1.if 判断 (1.1)判断字符串是否为空: if "%var1%" == " " ( echo null) else(echo not null ) (1. ...

  7. Shell脚本常用命令整理

    该笔记主要整理了一些常见的脚本操作命令,大致如下(持续补充中): 1. while.for循环 1. while.for循环 #!/bin/bash # while循环 v_start_date=${ ...

  8. linux常用命令(shell脚本常用命令)(grep、cut、sort、uniq、seq、tr、basename、dirname)

    本章命令: 1 2 3 4 5 6 grep cut sort uniq seq tr 1.grep 作用:过滤文本内容 选项 描述 -E :--extended--regexp 模式是扩展正则表达式 ...

  9. bat脚本基础教程

    bat脚本就是DOS批处理脚本,就是将一系列DOS命令按照一定顺序排列而形成的集合,运行在windows命令行环境上.本文主要介绍bat脚本基础语法,希望完成本文内容学习之后具备基础的bat脚本开发能 ...

  10. bat脚本输出日志

    一,bat脚本常用的的输出命令是“echo 输出内容”,可以利用echo将文本输出到cmd窗口或文件.bat脚本是不区分大小写的脚本语言,因此大小写都可以. 例如: REM 在命令行窗口输出 echo ...

随机推荐

  1. beego4---web项目结构

    app.conf appname = blog1 httpport = runmode = dev controllersmy package controllersmy //跟外面的包名一致 imp ...

  2. Django的CBV方式讲解

    CBV使用配置 路径url的配置 cbv 顾名知义就是通过类的方法来调用,我们在url中配置为如下路径 url(r'^cbv.html/', views.Cbv.as_view()), 这里的Cbv是 ...

  3. C# 判断两个矩形是否相交

    源代码 public bool JudgeRectangleIntersect(double RecAleftX, double RecAleftY, double RecArightX, doubl ...

  4. bzoj 1044: [HAOI2008]木棍分割【二分+dp】

    对于第一问二分然后贪心判断即可 对于第二问,设f[i][j]为已经到j为止砍了i段,转移的话从$$ f[i][j]=\sigema f[k][j-1] (s[j]-s[k-1]<=ans) 这里 ...

  5. mysql机制总结

    Innodb和myisam最大的不同就是 innodb支持事物 采用了行锁 myisam 采用了表锁 默认就使用了表锁 表锁:速度快 并发小 发生锁冲突高 开销小 行锁:速度慢 并发高 发生锁冲突低 ...

  6. mysql 的索引hash和b+tree 区别

    索引hash相当于数组,键值对组合,对于id = 6或者status= 2这样条件查询,但是对于id>12等这样,用btree索引最好.

  7. G - And Then There Was One (约瑟夫环变形)

    Description Let’s play a stone removing game. Initially, n stones are arranged on a circle and numbe ...

  8. 因Window服务器自动更新并重启导致WebSphere服务停止服务故障一例

    最近公司购买了两台Windows Server 2008 R2服务器用于提供提供Web服务,A机器安装了IHS+DM+WAS8.5集群,B机器安装了Oracle11gR2用于数据存储,两台机器均可连接 ...

  9. multiprocessing的进程通信Pipe和Queue

    pipe管道,2个进程通信,允许单项或者双向,multiprocessing.Pipe(duplex=False)为单项,默认双向 示例: from multiprocessing import Pr ...

  10. Spring Boot (32) Lock 本地锁

    平时开发中,有时会双击提交表单造成重复提交,或者网速比较慢时还没有响应又点击了按钮,我们在开发中必须防止重复提交 一般在前台进行处理,定义个变量,发送请求前判断变量值为true,然后把变量设置为fal ...