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

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

Ответить
Настройки темы
CMD/BAT - [решено] If внутри If

Аватара для Доктор Ливси

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


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

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


Помогите, пожалуйста. Нужно следующее: при отсутствии в месяце и дне файла нулей и единиц присвоить переменной md две цифры текущего месяца и две цифры текущего дня

Echo Off && Cls
Setlocal EnableExtensions EnableDelayedExpansion
Echo Сегодня %date%
Echo %date:~3,2% | findstr "01 02 03 04 05 06 07 08 09" > nul
If !ErrorLevel!==1 (Echo %date:~0,2% | findstr "01 02 03 04 05 06 07 08 09" > nul
If !ErorLevel!==1 (Set md=%mdd:~3,2%%mdd:~0,2%)
)
Echo %md%
Endlocal

Ругается, что вывод команд на экран (Echo) отключен. Пытался конструкции, типа %date:~3,2% присваивать переменным и затем производить действия с переменными - та же петрушка

Отправлено: 14:05, 01-02-2012

 

Ветеран


Contributor


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

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


root221, Если делать как у Вас
Код: Выделить весь код
@Echo Off

:eom
Set /P i="i= Parameters: "
If /i "%i%"=="test" GoTo :test

GoTo :eom

:test
test.vbs
GoTo :eom
А если чуть соптимизировать
Код: Выделить весь код
@Echo Off

:eom
Set /P i="i= Parameters: "
If /i "%i%"=="test" Call test.vbs & GoTo :eom

GoTo :eom

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


Последний раз редактировалось megaloman, 02-02-2012 в 18:40.

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

Отправлено: 18:33, 02-02-2012 | #11



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

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


Аватара для Доктор Ливси

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


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

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


Спасибо всем участвовавшим, у ми всё работает как надо теперь

Отправлено: 06:50, 03-02-2012 | #12


Ветеран


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

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


Подскажите, почему не выполняется проверка по второму условию?
Код: Выделить весь код
if exist "%ProgramFiles%\WinRAR\WinRAR.exe" (
if not exist "%Windir%\Web\Wallpaper_bk" (
start "Rar" /wait "%ProgramFiles%\WinRAR\WinRAR.exe" a -ep1 "%Windir%\Web\Wallpaper_bk" "%Windir%\Web\Wallpaper\*.*"
)
)

Отправлено: 21:06, 14-05-2012 | #13


Ветеран


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

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


sov44, А винрар точно в %ProgramFiles% ? А то еще бывает %ProgramFiles(x86)%.

Отправлено: 21:33, 14-05-2012 | #14


Ветеран


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

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


Foreigner, ось Windows XP х 32, %ProgramFiles(x86)% не работает. Скрипт срабатывает как при наличии, так и при отсутствии файла Wallpaper_bk

Отправлено: 22:08, 14-05-2012 | #15


Ветеран


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

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


У меня схожее условие отрабатывает правильно.

Отправлено: 22:28, 14-05-2012 | #16


Ветеран


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

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


Цитата Foreigner:
У меня схожее условие отрабатывает правильно. »
а у меня архив всё время пересобирается (((

Отправлено: 22:45, 14-05-2012 | #17


Аватара для ferget

Разный


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

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


Цитата sov44:
Скрипт упаковки работает. В папке Wallpaper находится подпапка. Мне не нужно её архивировать, только файлы, поэтому убран крюч -r »
неправильно понял вопрос

проверил скрипт, срабатывает как надо, архив собирается только если нет файла Wallpaper_bk

Отправлено: 22:49, 14-05-2012 | #18


Ветеран


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

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


Разобрался. Забыл в Wallpaper_bk указать расширение rar.

Отправлено: 23:07, 14-05-2012 | #19



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

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

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Загрузка - Суть проблемы внутри dock3r Тест-форум 0 09-03-2010 22:51
C/C++ - Задание внутри Wurka86 Программирование и базы данных 1 25-05-2008 22:18
Сортировка внутри папки Evita Хочу все знать 6 24-08-2007 16:07
Локалка внутри локалки alnat2 Сетевые технологии 6 01-09-2006 18:02
Прокся внутри локалки! Dikii Angel Хочу все знать 2 22-01-2004 17:48




 
Переход