pause命令 暂停程序 会不关闭控制台 并且显示"请按任意键继续... pause>nul 则不会显示提示
echo off 执行后后面所有命令语句将不再显示在控制台中 如果加入@ "@echo off" 则本次执行语句也不显示命令回显
echo on 打开命令回显
批处理文件注释语句用两个双引号:: rem也可以屏蔽 但是在echo on状态下会打印出来屏蔽的语句 @rem则不会显示
dir c:\ 查看路径下文件
title+文本 改写控制台上边的标题
exit 退出并且关闭控制台
goto命令 跳转到某个标签 对应的标签 用冒号+字符标记 例如":tag" goto和标签中间的逻辑将不再执行 (call+:标签也可以跳转到标签 但执行完标签依旧会执行call后的逻辑 call命令后加标签要加: goto不用)
start chrome.exe http:\\www.baidu.com 打开google浏览器并且进入百度搜索 start www.baidu.com 用默认浏览器打开网址
choice /t 10 /d y /n >nul 延长10秒后执行下面的逻辑
set 设置变量值 set num = 1 用num的时候 需要用前后两个%获取 %num%
set /p 接收用户输入 例如 set /p time = “输入时间:” 控制台会显示 “输入时间” 输入后time则接收输入的字符
set 截取 字符从0位置开始 set des=%src:~index,num% num 是正数 从index开始算 num是负数
set src = give me set des = %src:~1,3% des则为ive set des = %src:~2~-1% des则为ve me
set替换字符 set des=%src:str1=str2% set src = give me set des = %src:me=her% des则会变成 give her
set /a 可以用表达式为变量赋值 set /a time = 1 + 1
比较运算符 等于:EQU 不等于:NEQ 小于:LSS 小于等于:LEQ 大于:GTR 大于等于:GEQ
if else 语句 例子:if 1 equ 2 (echo 111111) else (echo 2222) 注意不能用回车换行
call和start调用另一个.bat文件时的区别 call相当于在一个进程中调用 start会新开始一个进程执行新.bat文件 call两个文件可以相互传数据
start只能调用者传给被调用者
echo text>a.txt 把文本“text”写入文件a.txt中 如果没有a.txt 文件则先创建 如果已经存在 则先删除现有文字 重写写入
echo text>>a.txt 和 echo text>a.txt 的区别是当已经存在文件时 不删除文字 直接追加文字
如果直接创建文件 可以用 cd.>a.txt del a.txt可以删除文件
for 循环 如果需要可以配加参数 "/l" "/d" "/r" "/f"