@echo off
set Hint=3
echo Hints=%Hint%
pause >nul
set /p Talk=">"
if %Talk%"=="Hint?" &if %Hint%"=="3" echo yay!
pause >nul
cls
어떻게 "yay!"라고 말합니까? 두 가지 if 문 (가능한 경우)을 사용하고 % Hint % = 3 인 경우에만? 저는 일괄 처리가 처음이고 초보자입니다.두 개의 if 문 사용
@echo off
set Hint=3
echo Hints=%Hint%
pause >nul
set /p Talk=">"
if %Talk%"=="Hint?" &if %Hint%"=="3" echo yay!
pause >nul
cls
어떻게 "yay!"라고 말합니까? 두 가지 if 문 (가능한 경우)을 사용하고 % Hint % = 3 인 경우에만? 저는 일괄 처리가 처음이고 초보자입니다.두 개의 if 문 사용
앰퍼샌드 &
를 제거하고 추가 따옴표 :
if "%Talk%"=="Hint?" if "%Hint%"=="3" echo yay!
코드에서 앰퍼샌드를 제거하기 만하면됩니다.
if "%Talk%"=="Hint?" (
if "%Hint%"=="3" (
echo yay!
)
)
또한 놓치고있어 일부 "
의
배치/CMD에는 이진 논리 연산자가 없습니다. 당신은 C에서와 같이 그들을 묶을 수 있습니다. 좀 더 복잡한 논리를 필요한 경우
if "%Talk%"=="Hint?" if "%Hint%"=="3" echo yay!
, 당신은 더 복잡한 표현을 구축하고 하나의 "부울"정수로 감소 SET /A
와 비트 AND (&
)와 OR (|
) 연산자를 사용할 수 있습니다.
빠른 검색 = http://stackoverflow.com/questions/6711615/using-multiple-if-statements-in-a-batch-file – Nick
그 덕분에, 닉! –