Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

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

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

Аватара для madmax24

Ветеран


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

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


Добрый день.
Извиняюсь если пропустил поиском тему, но я в bat файле хочу, чтобы у меня в нужный месяц и нужный день делалась нужная команда А.
Как выцепить день и месяц я знаю. А вот как в if затолкать 2 этих условия я не могу найти .
пробовал типа if УСЛОВИЕ 1 && УСЛОВИЕ 2 (
командна А
)
не помогло... со скобками в условии пробовал, тоже не помогло...
Подсобите умным советом, пожалуйста.

-------
Я закончил, все свободны.


Отправлено: 12:04, 14-04-2009

 

Аватара для CyberDaemon

DOOMer


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

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


Вложить IF друг в друга?

IF УСЛОВИЕ 1 (
IF УСЛОВИЕ2 КОМАНДА A
)

-------
"640 K ought to be enough for anybody" Bill Gates, 1981


Отправлено: 13:01, 14-04-2009 | #2



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

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


Аватара для madmax24

Ветеран


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

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


пишет что ошибка в ситаксисе.... ну там синтаксис то примитивный ))).... Структура моего скрипта такая должна быть:
if xxx==zzz (
if aaa==www тра ля ля
) ELSE (
if xxx==www && ddd==sss (
dddddd
exit
)
)

-------
Я закончил, все свободны.


Отправлено: 16:28, 14-04-2009 | #3



Moderator


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

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


Код: Выделить весь код
if xxx==zzz (
  if aaa==www тра ля ля 
) ELSE (
  if xxx==www (
    if ddd==sss (
      dddddd
      exit
    )
  )
)
Это сообщение посчитали полезным следующие участники:

Отправлено: 16:42, 14-04-2009 | #4


Аватара для madmax24

Ветеран


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

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


Буду пробовать, жаль конечно что в один оператор не получится

-------
Я закончил, все свободны.


Отправлено: 10:03, 16-04-2009 | #5


Googler


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

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


Цитата madmax24:
жаль конечно что в один оператор не получится »
Код: Выделить весь код
If xxx==zzz (
   If aaa==www тра ля ля 
) Else (
   If xxx==www If ddd==sss (
      dddddd
      exit
   )
)

Отправлено: 12:06, 16-04-2009 | #6


Аватара для madmax24

Ветеран


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

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


amel27, это не то, что я хочу


п.с. А кто поставил тему решенной? и почему?

-------
Я закончил, все свободны.


Отправлено: 15:07, 16-04-2009 | #7


Аватара для gora

Ушёл из жизни


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

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


Цитата madmax24:
это не то, что я хочу »
Так а что же Вы хотите!? Изобрести свой синтаксис: && ddd==sss, так cmd его все равно не поймет, т.к., перед ddd==sss обязательно должен идти оператор If. Вам на это cmd указывает:
Цитата madmax24:
пишет что ошибка в ситаксисе.... »
Цитата madmax24:
А кто поставил тему решенной? и почему? »
1 Наверное модератор...
2 Потому что Вам предложили несколько вариантов правильного написания вложенных условий и ответ на ваш вопрос
Цитата madmax24:
как в if затолкать 2 этих условия»
Вам выдан!
Это сообщение посчитали полезным следующие участники:

Отправлено: 15:40, 16-04-2009 | #8


Аватара для madmax24

Ветеран


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

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


Цитата gora:
Так а что же Вы хотите!? Изобрести свой синтаксис: && ddd==sss, »
Не, конечно синтаксис не буду изобретать, чесно верил в то, что виндовс могуч
я бы и сам поставил решеной тему, когда разобрался во всем до конца и все понял

-------
Я закончил, все свободны.


Отправлено: 16:26, 16-04-2009 | #9


Ветеран


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

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


2 all

Есть некрасивый, не компактный, но зато 100%но рабочий Вариант 1

Вариант 1
Скрытый текст
Код: Выделить весь код
If Not Exist "%Path1%" (
GoTo NotFound
)

If Not Exist "%Path2%" (
GoTo NotFound
)

If Not Exist "%Path3%" (
GoTo NotFound
)

If Not Exist "%Path4%" (
GoTo NotFound
)

If Not Exist "%Path5%" (
GoTo NotFound
)

Пожалуйста, у кого есть время, возможность, желание - помогите мне Вариант 1 объединить в одну строку, чтобы было красиво, компактно, что-то вроде Вариант 2

Вариант 2
Скрытый текст
Код: Выделить весь код
( ( ( If Not Exist "%Path1%" ) Or ( If Not Exist "%Path2%" ) Or ( If Not Exist "%Path3%" ) Or ( If Not Exist "%Path4%" ) Or ( If Not Exist "%Path5%" ) ) (
GoTo NotFound
)
)

Ещё я думал про Вариант 3
Скрытый текст
Код: Выделить весь код
If Not Exist "%Path1%" (
	If Not Exist "%Path2%" (
		If Not Exist "%Path3%" (
			If Not Exist "%Path3%" (
				If Not Exist "%Path5%" (
GoTo NotFound
)
)
)
)
)

Но - Вариант 3 сработает только в том случае, если нет всех 5ти файлов.

Если, для примера:
1) нет файл 1 и 2
2) есть файл 3
3) нет файл 4 и 5
то Вариант 3 не сработает.
Спасибо.

Последний раз редактировалось SharkyEXE, 12-02-2015 в 11:27.


Отправлено: 11:10, 12-02-2015 | #10



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

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

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Установка - [решено] Как сделать из настольной Windows 7 сделать ноутбучную версию? Andrei_IW Microsoft Windows 7 9 16-08-2009 15:53
CMD/BAT - [решено] Не всегда отрабатывается условие при использовании rasdial hosco Скриптовые языки администрирования Windows 8 04-05-2009 10:16
CMD/BAT - [решено] Не выполняет одно условие удаления файла VoodooHaker Скриптовые языки администрирования Windows 7 14-02-2009 17:49
VBS/WSH/JS - [решено] Как добавить "сложное" значение в "бинарный" параметр реестра с помощью WSH 13Demon Скриптовые языки администрирования Windows 1 10-02-2009 09:47
[решено] IF EXIST <условие> goto Pozia AutoIt 1 18-01-2009 19:20




 
Переход