郁闷阳光的专栏

欢迎朋友们经常来逛逛,一起交流

批处理中的变量引导符 %

 ①当百分号成对出现,并且其间包含非特殊字符时,一般做变量引用处理,比如:%var%、%str%

例1
@echo off
set str=abc
echo 变量 str 的值是: %str%
pause

在屏幕上将显示这样的结果:
变量 str 的值是: abc
按任意键继续...
-----------------------------------------------------------------------------------------------------

  ②另外,百分号作为变量引用还有一种特殊形式,那就是对形式参数的引用,此时,单个百分号后面紧跟0~9这10
个数字,如%0、%1、%2 。。。
%0      表示批处理文件本身,包括完整的路径和扩展名
%1至%9  表示第一个参数至第九个参数

例2
@echo off
if defined str goto next
set str=
set /p str=请把文件拉到本窗口后回车:
call "%~0" %str%
pause

:next
cls
echo 本批处理文件完整路径为:"%~0"
echo 拖到本窗口的文件完整路径为:"%~1"
goto :eof
-----------------------------------------------------------------------------------------------------

 ③出现在 set /a 语句中时,表示两数相除取余数,也就是所谓的模运算,它在命令行窗口和批处理文件中的写法
略有差异:在命令行窗口中,只需要单个的%,在批处理文件中,需要连续两个百分号,写成%%。

例如:在命令行窗口中,运行 set /a num=4%2 ,则结果将显示0,因为4除以2的余数为0;
如果保存为批处理文件,则此语句将略有改变:

例3
@echo off
set /a num=4%%2
echo 4除以2的余数为 %num%
pause
-----------------------------------------------------------------------------------------------------

④转义符号:如果要显示%本身时,需要在前面用%来转义。

例4
@echo off
echo 一个百分号:%%
echo 两个百分号:%%%%
echo 三个百分号:%%%%%%
pause

阅读更多
文章标签: 扩展
个人分类: 杂项 批处理
想对作者说点什么? 我来说一句

cmd命令行.TXT

2017年06月02日 76KB 下载

批处理教程精解【技术文档】

2012年10月05日 98KB 下载

没有更多推荐了,返回首页

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭