Если больше, чем командные файлы - PullRequest
33 голосов
/ 14 февраля 2012

Я написал простой командный файл для запуска часто используемых веб-сайтов на основе выбора номера. Вот код, который у меня есть. Я пытаюсь установить его так, что если кто-то введет число 6 или больше, оно будет равно :N, но всякий раз, когда я набираю 6, командный файл завершается. Я пытался if %input% > 6 goto :N, но он просто говорит мне, что я иду в Google.

@echo off
:Start2 
cls
goto Start
:Start
title Frequently Used Websites
echo Please select a website from the list
echo with the corresponding key
echo --------------------------------------
echo [1] Google
echo [2] Wikipedia
echo [3] Facebook
echo [4] Youtube
echo [5] Yahoo
set input=
set /p input= Choice:
if %input%==1 goto Z if NOT goto Start2
if %input%==2 goto X if NOT goto Start2
if %input%==3 goto C if NOT goto Start2
if %input%==4 goto V if NOT goto Start2
if %input%==5 goto B if NOT goto Start2
if %input%>=6 goto N

:Z
cls
echo You have selected Google
pause
start www.google.com
exit
:X
cls
echo You have selected Wikipedia
pause
start www.wikipedia.com
exit
:C
cls
echo You have selected Facebook
pause
start www.facebook.com
exit
:V
cls
echo You have selected Youtube
pause
start www.youtube.com
exit
:B
cls
echo You have selected Yahoo
pause
start www.Yahoo.com
exit
:N
cls
echo Invalid Selection! Try again
pause
goto :start2

Ответы [ 4 ]

85 голосов
/ 14 февраля 2012

попробуйте это:

if 3 gtr 2 @echo "biggger"

Это выводит:

"biggger"

enter image description here

Другие операторы:

EQU - равно
NEQ - не равно
LSS - менее
LEQ - меньше или равно
GTR - больше чем
GEQ - больше или равно

Ссылки * * один тысяча двадцать-одна Microsoft TechNet | Windows Server 2012 | Ссылка на командную строку: Если (В архиве здесь ) SS64: Если (в архиве здесь )

5 голосов
/ 22 февраля 2014
    if %var% geq 1

самый простой способ

1 голос
/ 30 мая 2014

На самом деле, вам даже не нужно больше возможностей. Все, что вам нужно сделать, это добавить

goto homepagename

Тогда вы попадете туда, если ни одна из команд if не выполнит команду goto.

Например, это исправит ваш код:

@echo off
:Start2 
cls
goto Start
:Start
title Frequently Used Websites
echo Please select a website from the list
echo with the corresponding key
echo --------------------------------------
echo [1] Google
echo [2] Wikipedia
echo [3] Facebook
echo [4] Youtube
echo [5] Yahoo
set input=
set /p input= Choice:
if %input%==1 goto Z if NOT goto Start2
if %input%==2 goto X if NOT goto Start2
if %input%==3 goto C if NOT goto Start2
if %input%==4 goto V if NOT goto Start2
if %input%==5 goto B if NOT goto Start2
if %input%>=6 goto N
goto Start
0 голосов
/ 25 ноября 2013

Вы можете написать это (проще)

@echo off

:Start2
cls
goto Start

:Start
title Frequently Used Websites
echo Please select a website from the list
echo with the corresponding key
echo --------------------------------------
echo [1] Google
echo [2] Wikipedia
echo [3] Facebook
echo [4] Youtube
echo [5] Yahoo

set /p input= Choice: 

if %input%==1 goto Z
if %input%==2 goto X
if %input%==3 goto C
if %input%==4 goto V
if %input%==5 goto B
echo Invalid selection!
echo.
echo Press any key to go back!
pause >nul
cls
goto start2

:Z
cls
echo You have selected Google
pause
start www.google.com
exit

:X
cls
echo You have selected Wikipedia
pause
start www.wikipedia.com
exit

:C
cls
echo You have selected Facebook
pause
start www.facebook.com
exit

:V
cls
echo You have selected Youtube
pause
start www.youtube.com
exit

:B
cls
echo You have selected Yahoo
pause
start www.Yahoo.com
exit

:N
cls
echo Invalid Selection! Try again
pause
goto start2
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...