Показать полную графическую версию : Проверка условия
Доктор Ливси
16-01-2012, 17:19
Хочется при условии равенства переменной mdd единице обеспечить переход на метку :Ok
Set mdd=%%~ta
Set mdd=!mdd:~3,1!
If %mdd%=1 (Goto :Ok) Else (Set mdd=!mdd:~4,1!!mdd:~0,2!)
:Ok
Echo Оно работает
А оно не работает :(. Пишет "Непредвиденное появление: (Goto."
Помогите, пожалуйста
If %mdd%=1 »
а разве там не так должно быть
if %mdd%==1
двойной знак равенства
mdd==!mdd:~4,1
if %mdd% equ 1 goto :<label>
— расширенная обработка включена по умолчанию.
Доктор Ливси
17-01-2012, 16:10
if %mdd% eql 1 goto :<label>
"Непредвиденное появление: 1.
Доктор Ливси, в консольной справке ошибка: должно быть не «eql», а «equ».
Доктор Ливси
18-01-2012, 16:25
for %%a in (*.txt) do (
set mdd=%%~ta
Set mdd=!mdd:~3,1!
If %mdd% EQU 1 Goto :Ok)
То же самое: Непредвиденное появление: 1.
If !mdd! EQU 1 Goto :Ok
)
Или сразу:
if !mdd:~3,1! equ 1 goto :Ok
)
P.S. А в чём общий смысл действа?
Доктор Ливси, попробуйте так:@Echo Off
SetLocal EnableDelayedExpansion
for %%a in (*.txt) do (
set mdd=%%~ta
Echo %%a %%~ta !mdd:~3,1!
If "!mdd:~3,1!"=="1" Goto :_Ok
)
Echo No
pause
:_Ok
Echo Ok
pauseА в чём общий смысл действа? »
Может быть - это проверка наличия хотя бы одного текстового файла за последний квартал произвольного года... :dont-know
Доктор Ливси
19-01-2012, 06:02
Нет, мне надо из дат файлов разных месяцев взять месяц, начинающийся на 1 и передать файл на дальнейшую обработку
В смысле — отобрать текстовые файлы, измененные за октябрь/ноябрь/декабрь, неважно какого года?
Доктор Ливси
19-01-2012, 07:56
угу
Доктор Ливси
19-01-2012, 16:01
Iska. gora. спасибо большущее, всё ок :)
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.