Имя пользователя:
Пароль:
 | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - [решено] как сделать двойную проверку if в одной строке?

Ответить
Настройки темы
CMD/BAT - [решено] как сделать двойную проверку if в одной строке?

Новый участник


Сообщения: 3
Благодарности: 0

Профиль | Отправить PM | Цитировать


Всем привет, появилась небольшая проблема.
@echo off
echo 1
echo 2
echo 3
set /p var1=
echo 1
echo 2
echo 3
set /p var2=
cls
if %var1%==1 (echo 1) else if %var1%==2 (echo 2) else if %var1%==3 (echo 3) && if %var2%==1 (echo 1) else if %var2%==2 (echo 2) else if %var2%==3 (echo 3)
pause
как в предпоследней строчке сделать так, чтобы выводилось два параметра а не один?
если условие с var1 будет выполнено, то он выведет только то что у него получилось с var1, а действия с var2 он пропустит
извиняюсь за какие либо ошибки, новичок как в программировании, так и в оформлении тем

Отправлено: 11:09, 07-11-2023

 

Аватара для YuS_2

Crazy


Contributor


Сообщения: 1235
Благодарности: 518

Профиль | Отправить PM | Цитировать


Цитата frozenny:
новичок как в программировании »
Учите сразу powershell, ибо cmd не развивается и имеет очень ограниченные возможности...
И на будущее: при возникновении проблемы, лучше описывать задачу, а не способы её решения...

-------
scio me nihil scire. Ѫ


Отправлено: 14:06, 07-11-2023 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Аватара для DJ Mogarych

fascinating rhythm


Moderator


Сообщения: 6705
Благодарности: 1576

Профиль | Отправить PM | Цитировать


Цитата YuS_2:
лучше описывать задачу, а не способы её решения »
Если это только не домашка, которую неохота решать самостоятельно.

-------
Powershell 7.x | Powershell 5.1 | ffmpeg (docs)


Отправлено: 18:26, 07-11-2023 | #3


Аватара для YuS_2

Crazy


Contributor


Сообщения: 1235
Благодарности: 518

Профиль | Отправить PM | Цитировать


Цитата DJ Mogarych:
Если это только не домашка, которую неохота решать самостоятельно. »
Да, собственно, пусть будет даже домашка... ведь, решая задачу, человек приобретает навыки, знания и абсолютно ничего не теряет (одни только плюсы), теряет только тот, кто ленится... так что, если хочется оставить свою собственную голову пустой, можно и домашку скидывать.

-------
scio me nihil scire. Ѫ


Отправлено: 11:29, 08-11-2023 | #4


Новый участник


Сообщения: 3
Благодарности: 0

Профиль | Отправить PM | Цитировать


Окей, приму к сведению, но задачу можно как нибудь решить?

Отправлено: 14:11, 08-11-2023 | #5


Аватара для NickM

Ветеран


Contributor


Сообщения: 4635
Благодарности: 1115

Профиль | Отправить PM | Цитировать


Цитата frozenny:
как нибудь решить? »
Код: Выделить весь код
@echo off
setlocal enabledelayedexpansion

for /l %%a in (1,1,2) do (
set /p var%%a=
)

for /l %%a in (1,1,2) do (
for /l %%b in (1,1,3) do (
if !var%%a! EQU %%b echo.var%%a=%%b
)
)

Отправлено: 17:23, 08-11-2023 | #6


Ветеран


Contributor


Сообщения: 2735
Благодарности: 1699

Профиль | Отправить PM | Цитировать


Не догоняю смысл, может так?
Код: Выделить весь код
@Echo Off &cls
:Begin
	(Set var1=&Set var2=)
	Set /P var1=var1=
	Set /P var2=var2=

	For %%i In (1 2 3) Do If "%Var1%"=="%%i" For %%j In (1 2 3) Do If "%Var2%"=="%%j" Echo %%i %%j
Pause
GoTo :Begin
Exit /B
или так
Код: Выделить весь код
@Echo Off &cls
:Begin
	(Set var1=&Set var2=)
	Set /P var1=var1=
	Set /P var2=var2=

	For %%i In (11 12 13 21 22 23 31 32 33) Do If "%Var1%%Var2%"=="%%i" Echo %%i
Pause
GoTo :Begin
Exit /B
или эдак
Код: Выделить весь код
@Echo Off &cls
:Begin
	(Set var1=&Set var2=)
	Set /P var1=var1=
	Set /P var2=var2=

	Echo %var1%|>nul FindStr /I /L /C:"1" /C:"2" /C:"3"&&Echo %var2%|>nul FindStr /I /L /C:"1" /C:"2" /C:"3"&& Echo %var1% %var2%
Pause
GoTo :Begin
Exit /B

-------
Даже самая сложная проблема обязательно имеет простое, лёгкое для понимания, неправильное решение. Каждое решение плодит новые проблемы.


Последний раз редактировалось megaloman, 09-11-2023 в 07:25.

Это сообщение посчитали полезным следующие участники:

Отправлено: 19:29, 08-11-2023 | #7


Новый участник


Сообщения: 3
Благодарности: 0

Профиль | Отправить PM | Цитировать


Спасибо за помощь!

Отправлено: 15:11, 09-11-2023 | #8



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - [решено] как сделать двойную проверку if в одной строке?

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
CMD/BAT - [решено] Как сделать проверку чтобы скрипт проверял есть ли в папке файл на удаления? turbolover Скриптовые языки администрирования Windows 2 04-07-2016 17:30
CMD/BAT - [решено] Помогите. несколько команд в одной строке cmd lopen Скриптовые языки администрирования Windows 8 19-08-2015 11:30
[решено] Синий экран после установки 8Gb памяти одной планкой. BIOS проверку проходит. Intellec2al Материнские платы и память 7 10-07-2014 12:03
CMD/BAT - [решено] Как сделать проверку соединения с выводом результата в [ msg * text] root221 Скриптовые языки администрирования Windows 6 02-03-2012 21:20
CMD/BAT - [решено] как сделать проверку файла (файлов) через cmd CaHeK_pk Скриптовые языки администрирования Windows 10 30-09-2011 20:51




 
Переход