这个批处理文件中%~1做了什么?

问题描述 投票:0回答:1

我找到了这段代码,但有些部分我不明白。

这是我的代码:

主.bat:

@echo off
set "CallCount=0"
set "Mood="
set /P "Mood=Your mood is: "
call Receive.bat "%Mood%"
rem *Random stuff*
set "Food="
set /P "Food=The food you want is: "
call Receive.bat "%Food%"
set "CallCount="

接收.bat:

@echo off  
set /A CallCount+=1           
if "CallCount"=="2" goto Call2   
if not "%~1"=="" echo %1     <----
*Random Stuff*                   |
goto :EOF                        |---What is %~1 doing in this area?
:Call2                           |
if not "%~1"=="" echo %1     <----
rem Commands for second call.

编辑:这是一个使用两次调用命令的文件。

batch-file
1个回答
65
投票

%1
是调用命令行的第一个参数。如果传递的参数周围有引号,则
%1
会包含引号。其中,
%~1
提供删除引号的参数值。

有用的参考这里

© www.soinside.com 2019 - 2024. All rights reserved.