Batch file 如何更改批处理中指定给变量的文本
因此,我在更改使用set/a指定的文本时遇到问题 这是我的剧本Batch file 如何更改批处理中指定给变量的文本,batch-file,Batch File,因此,我在更改使用set/a指定的文本时遇到问题 这是我的剧本 :wep cls if %gold% lss 50 ( echo not enough gold pause >nul goto shop ) if %weap%==Stick ( echo too low on level pause >nul goto shop ) if %wepugrd% lss 1 ( echo You don't have any upgrades pause goto shop ) cls
:wep
cls
if %gold% lss 50 (
echo not enough gold
pause >nul
goto shop
)
if %weap%==Stick (
echo too low on level
pause >nul
goto shop
)
if %wepugrd% lss 1 (
echo You don't have any upgrades
pause
goto shop
)
cls
echo Your Weapon is Being Upgraded
echo.
echo WAIT A FEW SECONDS
ping localhost -n 3 >nul
set /a weapdmg=%weapdmg% + 5
set /a weap=Stick
set /a wepugrd=%wepugrd% - 1
set /a gold=%gold% - 50
echo weapon upgraded
pause
goto shop
最后一部分已设置/a weap=斗杆
那是早些时候
但它只是将fist更改为0,而不是将其更改为stick
我能得到一些帮助吗
thanx使用以下代码:
:wep
cls
if %gold% lss 50 (
echo not enough gold
pause >nul
goto shop
)
if "%weap%"=="Stick" (
echo too low on level
pause >nul
goto shop
)
if %wepugrd% lss 1 (
echo You don't have any upgrades
pause
goto shop
)
cls
echo Your Weapon is Being Upgraded
echo.
echo WAIT A FEW SECONDS
%SystemRoot%\System32\ping.exe localhost -n 3 >nul
set /a weapdmg+=5
set "weap=Stick"
set /a wepugrd-=1
set /a gold-=50
echo weapon upgraded
pause
goto shop
如前所述,开关/A
仅用于算术运算,如果仅为变量分配一个字符串,则不能使用该开关
向现有值添加或减去整数也可以使用上面演示的简短形式
并以双引号括住
weap=Stick
。set weap=Stick
-/a开关仅用于算术运算。