bat脚本的函数以标签(:tag)的形式定义
以call :tag args的方式调用
最简单的实例, 调用函数输出:
@echo off
echo 调用 func1 函数
call :func1 abcde
pause
goto :End
:func1
echo 这里是 %0
echo 传入了参数: "%*"
goto End
:End
下面是个更复杂的实例:
@echo off
::
:: 以双冒号打头的是注释
::
:: 这里以SpectraLayers 8软件的激活脚本(片段)为例
::
color 0A
title 生成 STEINBERG软件 数字许可 - 请耐心等待...
echo=生成数字许可 - 共283项
"C:\Program Files (x86)\eLicenser\POS\SYNSOPOS.exe" /RegSeL
call :RegKey "112F MP3 Encoder" 01407C00000000112F2580
call :RegKey "1138 Sequel Bonus Pack 01" 01407C0000000011382255
call :RegKey "117C Sequel Content Set Rock" 01407C00000000117C259F
call :RegKey "117E Sequel Content Set Elektro" 01407C00000000117E25C3
call :RegKey "117F Sequel Content Set Industrial" 01407C00000000117F25D5
call :RegKey "1180 Sequel Content Set 80s Pop" 01407C000000001180221A
call :RegKey "1181 Sequel Content Set Funky" 01407C00000000