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

批处理中%和%%的用法有哪些... 批处理中%和%%的用法有哪些 展开
 我来答
她是我的小太阳
高粉答主

2015-10-04 · 醉心答题,欢迎关注
知道顶级答主
回答量:5.1万
采纳率:83%
帮助的人:8701万
展开全部

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变量 


月下吹牛
2015-09-24 · TA获得超过200个赞
知道答主
回答量:70
采纳率:0%
帮助的人:60.2万
展开全部
%0为批处理本身的绝对路径,%1为第一个参数,以此类推至%9。%%i在for里面回用到,更多用法请for/?。set/a里面%%为取余数,a%%b为a除以b的余数。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
xiaoyuanan2000
2013-01-21 · TA获得超过341个赞
知道小有建树答主
回答量:244
采纳率:0%
帮助的人:154万
展开全部
%0为批处理本身的绝对路径,%1为第一个参数,以此类推至%9。%%i在for里面回用到,更多用法请for/?。set/a里面%%为取余数,a%%b为a除以b的余数。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
nameyu8023
2013-01-21 · TA获得超过528个赞
知道小有建树答主
回答量:640
采纳率:68%
帮助的人:403万
展开全部
看不懂也不要追问了。。。等下坐车回老家了。
@echo off
set a=789
echo %a%

pause
call :str 963
pause
for /l %%l (4,1,6) do (
set /p=%%l<nul
)
pause
:str
echo %1

goto :eof
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
kikihi
2013-01-21 · 超过29用户采纳过TA的回答
知道答主
回答量:124
采纳率:0%
帮助的人:84.5万
展开全部
%是直接用在cmd UI界面的。而%%是写入cmd档里面的。2者效果一致,这是我的经验。。请高手斧正
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式