bat 脚本之 使用函数
摘自:https://blog.csdn.net/peng_cao/article/details/73999076
2017年06月30日 15:06:37 pengcao89 阅读数:4631
版权声明:本文为博主原创文章,未经博主允许不得转载。转载请注明出处: http://blog.csdn.net/peng_cao https://blog.csdn.net/cpwolaichile/article/details/73999076
综述
Windows bat脚本是一种解释性的脚本语言,可以拿到做很多事情。对于稍简单的问题:比如通过注册表判断下档期机器的语言啊,国家啊,安装了那些软件啊等等还少诶简单。但是如果有可能使用bat脚本来处理较复杂的问题时,就需要用函数来将其模块化,方便bat脚本的阅读和编写。下面来介绍下bat 函数的用法
bat函数写法
如下是一个最简单的函数写法;以:func
开始以goto:eof
结束。:func
和goto:eof
之间的为函数内容,例如这里的echo this is a bat func
1 :func 2 echo this is a bat func 3 goto:eof
bat函数调用
写好了bat函数之后,我们需要调用它。如下代码片段展示了如何在bat脚本中调用函数。其实很简单,就这一句call:func
即可。
1 call:func 2 pause 3 :func 4 echo this is a bat func 5 goto:eof
bat函数返回值
目前我了解到的bat函数返回值的获取有如下两种方法:
- 使用参数带回
- 使用全局变量带回
这里直接贴上关于bat函数的各种条件的验证代码
1 echo off 2 color 0d 3 echo bat Function example 4 echo ================================= 5 echo ==========Func No paramter ====== 6 echo ================================= 7 echo before call myFuncNoPara 8 call:myFuncNoPara 9 echo after call myFuncNoPara 10 echo ================================= 11 echo ===========Func has paramter===== 12 echo ================================= 13 echo before call myFuncHasPara 14 call:myFuncHasPara 123 abc 15 echo after call myFuncHasPara 16 echo ================================= 17 echo =======Func with return value==== 18 echo ================================= 19 set return=123 20 set returnPara=321 21 echo return:%return% 22 echo returnPara:%returnPara% 23 echo befora call myFuncReturnValue 24 call:myFuncReturnValue returnPara abc 25 echo after call myFuncReturnValue 26 echo return:%return% 27 echo returnPara:%returnPara% 28 29 pause 30 :myFuncNoPara 31 echo myFuncNoPara enter 32 echo myFuncNoPara First para:%1 33 echo myFuncNoPara Second para:%2 34 echo myFuncNoPara Third para:%3 35 echo myFuncNoPara exit 36 goto:eof 37 38 :myFuncHasPara 39 echo myFuncHasPara enter 40 echo myFuncHasPara First para:%1 41 echo myFuncHasPara Second para:%2 42 echo myFuncHasPara Third para:%3 43 echo myFuncHasPara exit 44 goto:eof 45 46 :myFuncReturnValue 47 echo myFuncReturnValue 48 echo myFuncReturnValue First para:%1 49 echo myFuncReturnValue Second para:%2 50 set "%~1=%2%" 51 set return=%2 52 goto:eof
运行效果图
原文地址:https://www.cnblogs.com/LiuYanYGZ/p/10984375.html
时间: 2024-10-18 11:13:17