【WINDOWS / DOS 批处理】批处理文件的参数 、标签的参数
一、批处理文件的参数
执行批处理文件时,可以给其传递参数。参数位于批处理文件名后,使用空白分隔。例如:在“C:\>demo.bat arg1 arg2”命令中,arg1是传递给demo.bat的第一个参数,arg2是传递给demo.bat的第二个参数。
在批处理文件中,使用 %0 表示批处理文件本身,使用 %1 来接收传递给它的第一个参数,使用 %2 接收传递给它的第二个参数 ... 使用 %9 接收传递给它的第九个参数。使用 %* 接收传递给它的全部参数。
示例
::demo.bat
@echo off
echo first arg: %0
echo first arg: %1
echo second arg: %2
echo third arg: %3
echo four arg: %4
echo five arg: %5
echo six arg: %6
echo seven arg: %7
echo eight arg: %8
echo nine arg: %9
:: %10 被解析为 %1 和 0
echo error arg: %10
echo all arg: %*
运行
C:\>demo.bat arg0 arg1 arg2 arg3 arg4 arg5 arg6 arg7 arg8 arg9
batch file self: demo.bat
first arg: arg0
second arg: arg1
third arg: arg2
four arg: arg3
five arg: arg4
six arg: arg5
seven arg: arg6
eight arg: arg7
nine arg: arg8
error arg: arg00 // %1是arg0,故这里为arg00
all arg: arg0 arg1 arg2 arg3 arg4 arg5 arg6 arg7 arg8 arg9
C:\>
【总结】
- %0 代表批处理文件自身(例如上例中的demo.bat)
- %1 接收传递给批处理文件的第一个参数,%2 接收第二个参数 ... %9 接收第九个参数
- %9 后面的变量(例如:%10)是无效的
- %* 接收所有参数(可以无限多个,不只接收前九个参数)
- %0-%9 、%* 用于批处理文件,在DOS命令行环境使用则无效
- %0-%9 能被扩充,但是 %* 不能被扩充
扩充变量 https://blog.csdn.net/mt15306338066/article/details/127214009
二、标签的参数
什么是标签
使用call命令调用标签时,也可以给标签传递参数
- 和在命令行给批处理文件传参一样,给标签传参,也使用 %0 - %9 和 %*,区别:批处理文件参数 %0 表示批处理文件本身,而标签参数 %0 表示标签本身
- 只有标签被call命令调用时,标签中的 %0 - %9 和 %* 才会被解析为call命令给标签传递过来的参数。如果标签不是被call命令调用,在其它情况下标签被执行时(例如:goto :label或批处理文件按照程序流程执行标签中的代码),标签中的 %0 - %9 和 %* 会被解析为批处理文件的参数
- 标签的 %0-%9 也能被扩充, %* 也不能被扩充
示例
::demo.bat
@echo off
echo batch file self: %0
echo batchFile first arg: %1
echo batchFile second arg: %2call :target t1 t2
echo the line after call:target
echo 0 in lable: %0
echo 1 in lable: %1
echo 2 in lable: %2
运行
写作不易,如果本文帮到了您,请您 “在下面一圈三连”。
【WINDOWS / DOS 批处理】批处理文件的参数 、标签的参数相关推荐
- 【WINDOWS / DOS 批处理】findstr、find命令对汉字的支持
在WINDOWS / DOS 批处理编程中,使用findstr.find命令都可在文件中查找文本,但是它们对汉字的支持都存在如下"缺陷": 使用 findstr.find命令查找汉 ...
- 【WINDOWS / DOS 批处理】if命令参数详解(二)
if命令参数详解(一) if命令参数详解(二) [格式四]IF [ /I ] [ NOT ] string1 compare-op string2 command string1 compare- ...
- 【WINDOWS / DOS 批处理】findstr命令之参数详解(一)
目录 命令格式 命令功能 [filename参数] [/I参数] [/N参数] [/X参数] [/F:file参数] [/G:file参数] [strings和/C:string参数] [/R参数和/ ...
- 【WINDOWS / DOS 批处理】findstr命令之参数详解(二)
findstr命令之参数详解(一)[共三篇] findstr命令之参数详解(三)[共三篇] 目录 命令格式 [/B参数和/E参数] [/S参数] [/D:dirlist参数] [/A:coloratt ...
- 【WINDOWS / DOS 批处理】for命令详解(一)
for命令详解(一)[共十篇] for命令详解(二)[共十篇] for命令详解(三)[共十篇] for命令详解(四)[共十篇] for命令详解(五)[共十篇] for命令详解(六)[共十篇] for命 ...
- 【WINDOWS / DOS 批处理】if命令实现逻辑运算符
if命令参数详解 [IF命令格式]IF [opt] [not] condition cmdA else cmdB not关键字使IF命令支持逻辑运算符 "非"(N ...
- 【WINDOWS / DOS 批处理】call命令详解
命令格式 格式一:call [ [Drive:] [Path] FileName [Pararneters] ] 格式二:call [:label [arguments] ] 命令功能 使用 ...
- 【WINDOWS / DOS 批处理】for命令详解(三)
for命令详解(一)[共十篇] for命令详解(二)[共十篇] for命令详解(三)[共十篇] for命令详解(四)[共十篇] for命令详解(五)[共十篇] for命令详解(六)[共十篇] for命 ...
- 【WINDOWS / DOS 批处理】for命令详解(四)
for命令详解(一)[共十篇] for命令详解(六)[共十篇] for命令详解(二)[共十篇] for命令详解(七)[共十篇] fo ...
最新文章
- volatile对原子性、可见性、有序性的保证
- 老罗锤子rom发布会的十五个猜想
- Kubernetes网络设计原则
- mongodb模糊查询_MongoDB技术从0到1+
- html如何去掉有无标题点,HTML中,如何去掉某个元素下的一些特殊标签?
- RecyclerView使用中遇到的问题
- Origin: 软件申请+续期指引
- 【数据结构与算法分析】——java语言描述(1)
- BOB靶机渗透实战-----攻略(大神勿喷)
- Android怎么制作圆角矩形,如何在Android UI中绘制圆角矩形?
- POJ 3295 Tautology (模拟法,栈的使用)
- Mysql系列之 -配置详情
- 去法国,买哪些伴手礼既有面子又不破费
- 量子计算(七):量子系统
- SpringCloud DataFlow — 0. 本地部署
- 浅析移动旺旺特服号之无限扩展
- 刷新率属于计算机的显示性能指标吗,显示器性能参数的含义
- wx.saveImageToPhotosAlbum将图片保存到本地
- spark SQL快速入门 1-9 慕课网
- 股票基金模拟交易日志5
热门文章
- 【Oracle】session_cached_cursors和open_cursors的调整
- python画箭头_科学网-Python matplotlib quiver—画箭头、风场、量场图-张伟的博文
- java计算机毕业设计基于安卓Android/微信小程序的智慧养老院管理系统
- 忘记一个人的N种方式
- 吐槽解决windows任务栏卡死、无反应
- 多元线性回归(Linear regression with multiple variables)
- exit函数使用说明
- Java计算机毕业设计电影周边产品查找系统源码+系统+数据库+lw文档
- AList软件的使用--已经直接在win上进行磁盘映射--修改数据源为mysql
- 代码统计分析工具SourceCounter