|
|
|
как в батнике считать все аргументы полученные в cmd ?
|
|||
|---|---|---|---|
|
#18+
как в батнике считать все аргументы полученные в cmd ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.11.2007, 13:04 |
|
||
|
как в батнике считать все аргументы полученные в cmd ?
|
|||
|---|---|---|---|
|
#18+
Tubrikкак в батнике считать все аргументы полученные в cmd ? точнее параметры, мне нужно определить, был ли это запуск с парамтром /v, если нет, то перезапуститься с этим параметром. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.11.2007, 13:05 |
|
||
|
как в батнике считать все аргументы полученные в cmd ?
|
|||
|---|---|---|---|
|
#18+
Все параметры батника(%1 - %N), кроме имени батника(%0) , это %* - попробуй расковырять for ом Удачи! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.11.2007, 13:49 |
|
||
|
как в батнике считать все аргументы полученные в cmd ?
|
|||
|---|---|---|---|
|
#18+
Есть также команда shift, которую можно использовать для перебора списка параметров. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.11.2007, 14:26 |
|
||
|
как в батнике считать все аргументы полученные в cmd ?
|
|||
|---|---|---|---|
|
#18+
DayroonВсе параметры батника(%1 - %N), кроме имени батника(%0) , это %* - попробуй расковырять for ом Удачи! вариант конечно не очень, т.к. заранее я не заню сколько будет N, но все равно интересно сделать, но что-то не получается, не могу ему объяснить, что имею ввиду под %* пробовал так: Код: plaintext 1. 2. 3. подскажите, если не трудно пока попробую поковырять shift ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.11.2007, 14:51 |
|
||
|
как в батнике считать все аргументы полученные в cmd ?
|
|||
|---|---|---|---|
|
#18+
Разве переменные запрашиваются не через %VAR%? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.11.2007, 15:05 |
|
||
|
как в батнике считать все аргументы полученные в cmd ?
|
|||
|---|---|---|---|
|
#18+
MZHРазве переменные запрашиваются не через %VAR%? можно пример? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.11.2007, 15:11 |
|
||
|
как в батнике считать все аргументы полученные в cmd ?
|
|||
|---|---|---|---|
|
#18+
еще вопрос: как-нидь можно прервать цикл for кроме как goto ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.11.2007, 15:45 |
|
||
|
как в батнике считать все аргументы полученные в cmd ?
|
|||
|---|---|---|---|
|
#18+
получилось так: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. но оч. интересно, как это сделать с циклом for, еще не нравится, что shift смещает параметры и утрачивает их значение ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.11.2007, 15:49 |
|
||
|
как в батнике считать все аргументы полученные в cmd ?
|
|||
|---|---|---|---|
|
#18+
Заканчивайте писать батники и переходите на WSH - там можно делать гораздо больше и без лишних выкрутасов. На выбор два языка: JScript и VBScript ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.11.2007, 15:55 |
|
||
|
как в батнике считать все аргументы полученные в cmd ?
|
|||
|---|---|---|---|
|
#18+
Код: plaintext 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.11.2007, 15:56 |
|
||
|
как в батнике считать все аргументы полученные в cmd ?
|
|||
|---|---|---|---|
|
#18+
Dayroon Код: plaintext 1. подправил, работает, спасибо! Код: plaintext 1. 2. но оч. хочу знать, будет ли возможно так заставить его отображать вместо цифр аргументы, просто интересно, да и может где пригодится: Код: plaintext 1. 2. 3. и как прерывать цикл? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.11.2007, 16:17 |
|
||
|
как в батнике считать все аргументы полученные в cmd ?
|
|||
|---|---|---|---|
|
#18+
Tubrik подправил, работает, спасибо! Пользуйся Tubrik но оч. хочу знать, будет ли возможно так заставить его отображать вместо цифр аргументы, просто интересно, да и может где пригодится: Код: plaintext 1. 2. 3. С ходу не скажу, а упражняться лень. Не понимаю, зачем у тебя там тильда? Она нужна, имхо, для модификаторов, которые обычно работают только для путей и имен файлов. Tubrik и как прерывать цикл? Не задумывался, с ходу в голову лезет только трехэтажный IF: Код: plaintext 1. 2. 3. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.11.2007, 17:41 |
|
||
|
как в батнике считать все аргументы полученные в cmd ?
|
|||
|---|---|---|---|
|
#18+
тильду можно убрать а что тут прервет цикл? я вообще имею ввиду любой цикл ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.11.2007, 17:50 |
|
||
|
как в батнике считать все аргументы полученные в cmd ?
|
|||
|---|---|---|---|
|
#18+
Tubrikтильду можно убрать Ну и попробуй, мне лениво пробовать. Tubrik а что тут прервет цикл? я вообще имею ввиду любой цикл Я же говорю, не задумывался, в голову пришло только "холостое" выполнение. Может, кто подскажет еще.. По хорошему, справку надо изучать, м.б. MSDN почитать. С виндой неплохая справка по командам CMD идет... P.S. Недодумал пример, нагляднее так: Код: plaintext 1. 2. 3. 4. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.11.2007, 17:57 |
|
||
|
как в батнике считать все аргументы полученные в cmd ?
|
|||
|---|---|---|---|
|
#18+
DayroonНе понимаю, зачем у тебя там тильда? Она нужна, имхо, для модификаторов, которые обычно работают только для путей и имен файлов. не только ... в одиночестве она удаляет обрамляющие кавычки ... например полезно если возможны параметры с пробелами ... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.11.2007, 18:16 |
|
||
|
как в батнике считать все аргументы полученные в cmd ?
|
|||
|---|---|---|---|
|
#18+
qq.cmd@echo off set /a c=1 set _arg0=%~f0 for %%i in (%*) do call :q1 %%i set _arg goto :EOF :q1 if not "%~1" == "" set _arg%c%=%~1 set /a c=c+1 goto :EOF Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.11.2007, 18:50 |
|
||
|
как в батнике считать все аргументы полученные в cmd ?
|
|||
|---|---|---|---|
|
#18+
Tubrikи как прерывать цикл? например так Код: plaintext 1. 2. 3. 4. Код: plaintext 1. 2. 3. 4. 5. 6. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.11.2007, 18:57 |
|
||
|
как в батнике считать все аргументы полученные в cmd ?
|
|||
|---|---|---|---|
|
#18+
Biz© Tubrikи как прерывать цикл? например так Код: plaintext 1. 2. 3. 4. Код: plaintext 1. 2. 3. 4. 5. 6. наврал ... :EOF на цикле оборвёт задание вообще ... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.11.2007, 19:02 |
|
||
|
как в батнике считать все аргументы полученные в cmd ?
|
|||
|---|---|---|---|
|
#18+
спасибо, понял, остался еще один вопрос: с помощью ТАКОГО цикла можно перечислить аргументы: Код: plaintext 1. 2. 3. т.е. меня интересует как из ТАКОЙ i по ее значению извлечь соотв. аргумент? ну т.е. по ее содержимому, что есть число :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.11.2007, 19:50 |
|
||
|
как в батнике считать все аргументы полученные в cmd ?
|
|||
|---|---|---|---|
|
#18+
Tubrikт.е. меня интересует как из ТАКОЙ i по ее значению извлечь соотв. аргумент? ну т.е. по ее содержимому, что есть число :) Код: plaintext 1. 2. 3. 4. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.11.2007, 21:48 |
|
||
|
как в батнике считать все аргументы полученные в cmd ?
|
|||
|---|---|---|---|
|
#18+
суть в том что переменная раскрывается _один_ раз ... рекурсии нет ... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.11.2007, 21:52 |
|
||
|
как в батнике считать все аргументы полученные в cmd ?
|
|||
|---|---|---|---|
|
#18+
Tubrikи как прерывать цикл? Biz© например так Код: plaintext 1. 2. 3. 4. Дык, ежели по условию, то немного выше - Tubrik еще вопрос: как-нидь можно прервать цикл for кроме как goto ? Biz© не только ... в одиночестве она удаляет обрамляющие кавычки ... например полезно если возможны параметры с пробелами ... Спасибо, не знал. Tubrik т.е. меня интересует как из ТАКОЙ i по ее значению извлечь соотв. аргумент? ну т.е. по ее содержимому, что есть число :) А нафига? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.11.2007, 22:06 |
|
||
|
как в батнике считать все аргументы полученные в cmd ?
|
|||
|---|---|---|---|
|
#18+
Dayroon А нафига? просто интересно возможно ли технически ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.11.2007, 22:10 |
|
||
|
как в батнике считать все аргументы полученные в cmd ?
|
|||
|---|---|---|---|
|
#18+
Biz© Tubrikт.е. меня интересует как из ТАКОЙ i по ее значению извлечь соотв. аргумент? ну т.е. по ее содержимому, что есть число :) Код: plaintext 1. 2. 3. 4. вернее так Код: plaintext 1. 2. 3. 4. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.11.2007, 22:21 |
|
||
|
как в батнике считать все аргументы полученные в cmd ?
|
|||
|---|---|---|---|
|
#18+
Tubrik просто интересно возможно ли технически Сейчас думаю, что нет. Первого числа будет пара свободных часов на работе, если не забуду, попробую еще. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.11.2007, 22:22 |
|
||
|
как в батнике считать все аргументы полученные в cmd ?
|
|||
|---|---|---|---|
|
#18+
Biz© желаемый результат не вышел( опять числа ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.11.2007, 00:34 |
|
||
|
как в батнике считать все аргументы полученные в cmd ?
|
|||
|---|---|---|---|
|
#18+
Dayroon Tubrik просто интересно возможно ли технически Сейчас думаю, что нет. Первого числа будет пара свободных часов на работе, если не забуду, попробую еще. уж не забудь) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.11.2007, 00:55 |
|
||
|
как в батнике считать все аргументы полученные в cmd ?
|
|||
|---|---|---|---|
|
#18+
Tubrik Biz© желаемый результат не вышел( опять числа ХРюша СП2: qq.cmd Код: plaintext 1. 2. 3. 4. 5. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.11.2007, 11:55 |
|
||
|
как в батнике считать все аргументы полученные в cmd ?
|
|||
|---|---|---|---|
|
#18+
Biz© ХРюша СП2:... w2k sp4, w2k3 тоже работает, но ИМХО, %* все же корректнее и удобнее. В одном батнике %%%%i, ИМХО, не развернуть до значения параметра ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.11.2007, 13:38 |
|
||
|
как в батнике считать все аргументы полученные в cmd ?
|
|||
|---|---|---|---|
|
#18+
Dayroon Biz© ХРюша СП2:... w2k sp4, w2k3 тоже работает, но ИМХО, %* все же корректнее и удобнее. В одном батнике %%%%i, ИМХО, не развернуть до значения параметра я отвечал на конкретное требование - получить значение аргумента, номер которого берётся из переменной цикла for ... пользование %* ессно удобнее ... да и необходимость реализации указанного выше требования именно через for трудно представить в реальности :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.11.2007, 14:22 |
|
||
|
как в батнике считать все аргументы полученные в cmd ?
|
|||
|---|---|---|---|
|
#18+
не знаток, но попробуйте выводит результат 1 и 3 аргумента Код: plaintext 1. I Have Nine Lives You Have One Only THINK! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.11.2007, 14:58 |
|
||
|
как в батнике считать все аргументы полученные в cmd ?
|
|||
|---|---|---|---|
|
#18+
HandKotне знаток, но попробуйте выводит результат 1 и 3 аргумента Код: plaintext 1. I Have Nine Lives You Have One Only THINK! это мало чем отличается от: Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.11.2007, 15:15 |
|
||
|
как в батнике считать все аргументы полученные в cmd ?
|
|||
|---|---|---|---|
|
#18+
HandKotне знаток, но попробуйте выводит результат 1 и 3 аргумента Код: plaintext 1. Это тоже работает, но топикстартер "хочет странного" (с) Ему хочется именно через for (1,1,10). А так, саму задачу уже решили и несколько раз. Biz© пользование %* ессно удобнее ... да и необходимость реализации указанного выше требования именно через for трудно представить в реальности :) Именно эту мысль и пытался донести до автора. Процитировал Вас, дабы подтвердить автору, что на остальной линейке ОС, Ваше решение тоже работает ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.11.2007, 15:19 |
|
||
|
как в батнике считать все аргументы полученные в cmd ?
|
|||
|---|---|---|---|
|
#18+
Всем спасибо огромное, мне просто было любопытно знать об этом варианте. Синтаксис языка несколько странный для меня, столкнулся впервые, с одной стороны строгий (следит за пробелами и расположением скобок), с другой стороны расхлябанный, логика непоследовательная, трудно угадать как сделать что-либо, не воспользовавшись хелпом. Давайте закроем уже тему, а то чувствую, надоел :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.11.2007, 17:05 |
|
||
|
как в батнике считать все аргументы полученные в cmd ?
|
|||
|---|---|---|---|
|
#18+
Доброе время суток. Надо прервать цикл, при достижения определенного значения. Цикл открыт на основе количества файлов. Сделал так, но цикл не прервался: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. Подскажите пожалуйста, в чем ошибка ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.01.2011, 07:26 |
|
||
|
как в батнике считать все аргументы полученные в cmd ?
|
|||
|---|---|---|---|
|
#18+
Накопление внутри цикла не показывает: Код: plaintext 1. 2. 3. 4. 5. 6. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.01.2011, 11:55 |
|
||
|
как в батнике считать все аргументы полученные в cmd ?
|
|||
|---|---|---|---|
|
#18+
как тогда прервать непонятно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.01.2011, 12:30 |
|
||
|
как в батнике считать все аргументы полученные в cmd ?
|
|||
|---|---|---|---|
|
#18+
С помощью команд IF и SHIFT можно в цикле обрабатывать все параметры командной строки файла, даже не зная заранее их количества. Например, следующий командный файл (назовем его primer.bat) выводит на экран имя запускаемого файла и все параметры командной строки: @ECHO OFF ECHO Выполняется файл: %0 ECHO. ECHO Файл запущен со следующими параметрами... REM Начало цикла :BegLoop IF -%1==- GOTO ExitLoop ECHO %1 REM Сдвиг параметров SHIFT REM Переход на начало цикла GOTO BegLoop :ExitLoop REM Выход из цикла ECHO. ECHO Все. Если запустить primer.bat с четырьмя параметрами: primer.bat А Б В Г то в результате выполнения на экран выведется следующая информация: Выполняется файл: primer.bat Файл запущен со следующими параметрами: А Б В Г Все. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.03.2011, 11:06 |
|
||
|
|

start [/forum/topic.php?all=1&fid=26&tid=1498564]: |
0ms |
get settings: |
9ms |
get forum list: |
17ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
182ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
78ms |
get tp. blocked users: |
2ms |
| others: | 240ms |
| total: | 551ms |

| 0 / 0 |
