您的位置首页百科词条

批处理中%和%%的用法有哪些

批处理中%和%%的用法有哪些

1.如果是 %a% 这种形式 ,就是变量的引用

@echo off

set a=123 rem定义一个变量a 赋值为123

echo %a% rem显示出变量a的值(如果不加% %系统会把乱和a当字符处理了,不会当成变量的) 

2.%%i 这种变量是for 语句里面 特有的变量(还有一种是外部变量,接受外部参数的格式是%1 -%9 共9个变量)哗拍盯,只有在批处理里面才写 两个 %% 号表示变量,cmd中只用 一个 % 号。反正只要你在批处理文件里面用 for,变量就用 %%。例如

批处理中的写法

for %%i in (1 2 3 4 5 ) do echo %%i

为什么批处理中用两个 %%,其实是编译器编译的时候要屏蔽一个%

在cmd窗口中写法

for %i in (1 2 3 4 5 ) do echo %i

3.现在说下外部变量,是系统制定的,只有9个,专门保存外部参数的,就是运行批处理时加的参数。只有 %1 %2 %3 %4 ...... %9

例如 

@echo off 

echo %1

echo %2

echo %3

echo %4

将上面的代码复制到记事本。保存格式为.bat

现在怎样传递参数给这个批处理,如下

在开始》运行 里面输入 cmd 确定

在弹出来的窗口中 输入 上面 批处理文件 的 完全路径名贺晌,然后就加要传递的参数了 例如 c:\text.bat aaaa bbbb cccc dddd eeeee

上面 aaaa bbbb cccc dddd eeeee

就是传递给 批处理 “参数”这些参数 会保存在 %1至 %9 这9个变量名,最多只能保存 9 个。运行下就知道了,上面批处理文件中 %1变量保存的是aaaa

%2 保存的是 bbbb 

%3 保存的是 cccc 

%4 保存的是 dddd 

%5 是 eeee 上面没有用到 %5变量