gpt4 book ai didi

batch-file - 批处理文件调用 %~1 并获取变量的当前值/字符串

转载 作者:行者123 更新时间:2023-12-03 09:37:46 26 4
gpt4 key购买 nike

下面的代码与批处理文件(命令提示符)有关。我的问题是代码中说 current value is %~1 的部分实际上并没有显示 %~1 的值(我想说 string01 或string02) 我不太清楚该怎么做。我环顾四周,但无法解决这个简单的问题。

@echo off 
goto :MainFunction

:Func01
echo.
echo Running Func01
echo Variable %~1 current value is %~1
echo.
echo Set new value for Variable %~1:
set /p %~1=
goto :eof

:MainFunction
echo This is the main function!
set Var01=string01
set var02=string02
echo Var01 is equal to %Var01%
echo Var02 is equal to %Var02%
call :Func01 Var01
call :Func01 Var02
echo Var01 is now equal to %Var01%
echo Var02 is now equal to %Var02%
goto :eof

最佳答案

您想在单个参数中同时获取变量名和值吗?

在行 echo Variable %~1 current value is %~1 中,必须评估第二个 %~1。所以需要另一层解析。 “通常”的方法是使用 delayed expansion :

@echo off 
setlocal enabledelayedexpansion
goto :MainFunction

:Func01
echo.
echo Running Func01
echo Variable %~1 current value is !%~1!
echo.
echo Set new value for Variable %~1:
set /p %~1=
goto :eof

:MainFunction
echo This is the main function!
set Var01=string01
set var02=string02
echo Var01 is equal to %Var01%
echo Var02 is equal to %Var02%
call :Func01 Var01
call :Func01 Var02
echo Var01 is now equal to %Var01%
echo Var02 is now equal to %Var02%
goto :eof

关于batch-file - 批处理文件调用 %~1 并获取变量的当前值/字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48058574/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com