powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Программирование [игнор отключен] [закрыт для гостей] / CMD. Выполнение нескольких операторов по условию...
8 сообщений из 8, страница 1 из 1
CMD. Выполнение нескольких операторов по условию...
    #36820248
Фотография Мордор Держимордов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Смысл вопроса в следующем:

Данный код:
Код: plaintext
if exist "D:\Shutdown.bat" ( mkdir "d:\1\2" & mkdir "d:\2\2")
выполняется.

Данный код:
Код: plaintext
1.
 if exist "D:\Shutdown.bat" ( mkdir "d:\1\2" 
& mkdir "d:\2\2")
не выполняется.


А у меня по одному условию надо выполнить около 80 всяких команд.
Мне их всех в одну строку пихать или можно что-нибудь поумней?
...
Рейтинг: 0 / 0
CMD. Выполнение нескольких операторов по условию...
    #36820262
Фотография eNose
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
[не активирован]
[не одобрен]
Мордор ДержимордовМне их всех в одну строку пихать или можно что-нибудь поумней? в отдельный кмд-файл
...
Рейтинг: 0 / 0
CMD. Выполнение нескольких операторов по условию...
    #36820294
junior  idiot
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Попробуйте использовать скобки в if-е иначе. AFAIK, они используются так:
Код: plaintext
1.
2.
3.
4.
5.
6.
if exist "D:\Shutdown.bat" (
    mkdir "d:\1\2" 
    mkdir "d:\2\2"
) else (
    rem ...
    rem ...
)
...
Рейтинг: 0 / 0
CMD. Выполнение нескольких операторов по условию...
    #36820296
junior  idiot
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ну а если не получится -- goto для батников не такое уж и "зло".
...
Рейтинг: 0 / 0
CMD. Выполнение нескольких операторов по условию...
    #36820316
Фотография ПЕНСИОНЕРКА
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
junior idiotНу а если не получится -- goto для батников не такое уж и "зло".

а почему разумное goto считается злом
меня бесит,когда нежелание использования goto при больших условиях приводит к полной нечитабельности. Данный пример может не использовать goto ,но

для меня более приемлемым всегда был вариант типа

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
программа обработка1(таблица)
ecли таблица не найдена
goto конец_прогр
конец если

открыть таблицу
выполнить пока есть записи
если усл1 
.....
goto чтение_след_зап
конец если
если усл2 
.....
goto чтение_след_зап
конец если
.....
если усл99 
.....
goto закрытие
конец если

чтение_след_зап: читать следующую
конец цикла
....
закрытие:закрыть таблицу
конец_прогр:
конец программы

видя строку

goto чтение_след_зап
конец если.
Я имела законченный блок текста и логики.
...
Рейтинг: 0 / 0
CMD. Выполнение нескольких операторов по условию...
    #36820317
x1ca4064
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
junior idiotНу а если не получится -- goto для батников не такое уж и "зло".

Есть еще call :label
...
Рейтинг: 0 / 0
CMD. Выполнение нескольких операторов по условию...
    #36820322
junior  idiot
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ПЕНСИОНЕРКАа почему разумное goto считается злом
меня бесит,когда
А меня бесит, когда после вопросов не ставят вопросительных знаков, а после знаков препинания не ставят пробелов.
Успокойтесь, разумное goto злом не считается по определению. Только такие случаи можно пересчитать по пальцам одной руки; это уже было проделано Дональдом Кнутом, и толочь далее воду в ступе не вижу смысла.
...
Рейтинг: 0 / 0
CMD. Выполнение нескольких операторов по условию...
    #36820329
junior  idiot
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ПЕНСИОНЕРКА
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
программа обработка1(таблица)
ecли таблица не найдена
goto конец_прогр
конец если

открыть таблицу
выполнить пока есть записи
если усл1 
.....
goto чтение_след_зап
конец если
если усл2 
.....
goto чтение_след_зап
конец если
.....
если усл99 
.....
goto закрытие
конец если

чтение_след_зап: читать следующую
конец цикла
....
закрытие:закрыть таблицу
конец_прогр:
конец программы

Куда приятнее это:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
программа обработка1(таблица)
ecли таблица не найдена выйти из программы

открыть таблицу

выполнить пока есть записи
если усл1 
.....
иначеесли усл2 
.....
.....
иначеесли усл99 
.....
выйти из цикла
конец если

читать следующую
конец цикла
....
закрыть таблицу
конец программы
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / Программирование [игнор отключен] [закрыт для гостей] / CMD. Выполнение нескольких операторов по условию...
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]