Bat 脚本(常用命令)
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”属于特殊符号的使用,请看本文后面的章节
Pause
(1)暂停 press any key to continue
Pause
(2)自定义停止 提示语
格式:
echo 其他提示语 & pause > nulerrorlevel
程序运行后返回码 echo %errorlevel%
用处: 判断命令是否执行成功
默认值: 0(正确)
出错 errorlevel 会设置为 1title
更换cmd 窗口名字
用法:
title 新窗口名字color
更改cmd的 前\后景颜色属性
用法:
color + attrattr 是 两位的十六进制数,第一位为前景色,第二位则为后景色
0 = 黑色 8 = 灰色
1 = 蓝色 9 = 淡蓝色
2 = 绿色 A = 淡绿色
3 = 湖蓝色 B = 淡浅绿色
4 = 红色 C = 淡红色
5 = 紫色 D = 淡紫色
6 = 黄色 E = 淡黄色
7 = 白色 F = 亮白色如果没有attr 参数,则返回成cmd启动时的属性
mode
配置系统设备
例子:(更改cmd窗口大小 和 颜色)
mode con cols=80 lines=20 & color f2
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
4start
新开一个程序执行例:
start explorer d:
调用图形界面打开D盘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 文件不存在!
%
用法:
(1)%变量名%
引用变量名的值
例子:
set file=“test.txt” rem 注意:变量名file后的=号 和 值不要有空格
(2)%0~%9
表示的是从外部参数引用的值
%0 就是程序本身,或者路径
%1 第一个参数 ... %9 第9个参数< >& <& 重定向符
@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
| 命令管道符
格式:cmd1 | cmd2 | cmd3 |...
说明:将第一条命令的结果作为第二条命令的参数来使用
例如:dir C:\|find "txt"
上述命令解释: 查找C:\ 下 所有匹配的"txt"字符串
^ 转义字符
^相当于C语言的"/" 转义字符DOS 循环
for 循环:
格式:for %%var in (set) do Command [command-parameters] command-parameters:
有四个参数: /d /l /r /f
系统变量
用法:
可以通过 %系统变量名% 查看当前系统变量的值例子:
%HOMEPATH%
自定义变量
(1)自定义变量
set 变量名=值
(2)手动输入变量的值 set /p@echo off
set /p var=请输入变量的值
echo %var%
pause var变量名 =号右边的是提示语,不是变量的值
if...else... 条件语句
在 if...else 语句中 还有判断数字的符号:EQU - 等于
NEQ - 不等于
LSS - 小于
LEQ - 小于或等于
GTR - 大于或等于
例子:
IF EXIST filename (
del filename
) ELSE (
echo filename missing
)
random (随机数%random%)的应用技巧
例子:
@echo off
setlocal enabledelayedexpansion
for /L %%i in (1 1 5) do (
set /a randomNum=!random!%%100
echo 随机数:!randomNum!
)
pause
Bat 脚本(常用命令)的更多相关文章
- Shell 脚本常用命令
Shell脚本是Linux开发工作中常用的工具,但是我一直没有找到一个适合自己的简明扼要的HandBook.在工作过程中整理了一下,贴在这里已备查看. 1 Shell中的特殊符号 ...
- shell脚本常用命令汇总
一.shell脚本概述和入门 (1)shell脚本是一个命令行解释器,它接收应用程序/用户命令,然后调用操作系统内核 (2)shell脚本的常用执行方式: 第一种:采用bash或sh+脚本的相对路径或 ...
- oracle数据库执行脚本常用命令总结
1. 执行一个SQL脚本文件 代码如下 复制代码 sqlplus user/pass@servicename<file_name.sql或SQL>start file_names或SQL& ...
- Shell脚本常用命令简介
格式化日期yyyy-mm-dd hh:mm:ss显示 date "+%Y-%m-%d %H:%M:%S" 将内容写入到新文件 echo "hello">a ...
- 【原创】Linux基础之Shell脚本常用命令
#!/bin/sh 1 取脚本参数 $# 参数个数$0 当前脚本名$1 第1个参数$n 第n个参数$* 所有参数$@ 所有参数$? 上个命令的状态$$ 当前pid 2 日期 $ dateWed Mar ...
- bat脚本简单命令
1.if 判断 (1.1)判断字符串是否为空: if "%var1%" == " " ( echo null) else(echo not null ) (1. ...
- Shell脚本常用命令整理
该笔记主要整理了一些常见的脚本操作命令,大致如下(持续补充中): 1. while.for循环 1. while.for循环 #!/bin/bash # while循环 v_start_date=${ ...
- 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 模式是扩展正则表达式 ...
- bat脚本基础教程
bat脚本就是DOS批处理脚本,就是将一系列DOS命令按照一定顺序排列而形成的集合,运行在windows命令行环境上.本文主要介绍bat脚本基础语法,希望完成本文内容学习之后具备基础的bat脚本开发能 ...
- bat脚本输出日志
一,bat脚本常用的的输出命令是“echo 输出内容”,可以利用echo将文本输出到cmd窗口或文件.bat脚本是不区分大小写的脚本语言,因此大小写都可以. 例如: REM 在命令行窗口输出 echo ...
随机推荐
- Grunt学习日记
Grunt和 Grunt 插件是通过npm安装并管理的, npm是Node.js的包管理器. 第一步:先安装node.js环境 第二步:安装Grunt-CLI 在node.js命令工具中输入npm i ...
- CSU 1806 Toll 自适应simpson积分+最短路
分析:根据这个题学了一发自适应simpson积分(原来积分还可以这么求),然后就是套模板了 学习自适应simpson积分:http://blog.csdn.net/greatwall1995/arti ...
- c# 关于一些数值转换的整理(部分)
1.c#整型转字符型,不足2位的在前面补0. //1->01 1.ToString().PadLeft(2,'0'); 2.Convert.ToString(str1)和str1.ToStrin ...
- Spark 分布式环境--连接独立集群管理器
Spark 分布式环境:master,worker 节点都配置好的情况下 : 却无法通过spark-shell连接到 独立集群管理器 spark-shell --master spark://soyo ...
- 【第三届强网杯】write up
一,鲲or鳗orGame 从浏览器里拿到game.gb 用 VisualBoyAdvance ,搜索内存变量,然后改变量就完事了,但是改变量他们说直接利用添加代码功能有bug,所以要在工具里的内存查看 ...
- Linux安装FTP文档服务器
1.检查是否安装 了vsftpd,如果未安装 则安装vsftpd. 1)查看系统中是否安装了vsftpd,可以通过执行命令 :rpm -qa | grep vsftpd 2)如果没有安装 vsftpd ...
- 关于Android皮肤更换分享
http://www.eoeandroid.com/forum.php?mod=viewthread&tid=264902&highlight=%E6%8D%A2%E8%82%A4&a ...
- Manacher BestCoder Round #49 ($) 1002 Three Palindromes
题目传送门 /* Manacher:该算法能求最长回文串,思路时依据回文半径p数组找到第一个和第三个会文串,然后暴力枚举判断是否存在中间的回文串 另外,在原字符串没啥用时可以直接覆盖,省去一个数组空间 ...
- MySql 同表复制数据 可以改变数据
Mysql语法: INSERT INTO 表名 (字段) SELECT 字段 FROM 表名 WHERE 条件: 如果要修改其中某一个字段,在查询语句中:x(要改变的值) as 字段名. eg: IN ...
- 300 Longest Increasing Subsequence 最长上升子序列
给出一个无序的整形数组,找到最长上升子序列的长度.例如,给出 [10, 9, 2, 5, 3, 7, 101, 18],最长的上升子序列是 [2, 3, 7, 101],因此它的长度是4.因为可能会有 ...