![]() |
Запуск программ из батника
Обычно запуск программ из батника выглядит как строка: “c:\program files\example.exe”
А как быть, если нужно запустить произвольный exe-файл из нужной папки? Вариант “c:\program files\*.exe” не проходит… |
akrav, это типа *******.bat имя. расширение ? Так?
Задачи на bat-файлах |
|
В известной папке находиться один exe-ник. Имя этого файла периодически меняется. Поэтому чтобы не переправлять батник, желательно написать строку для самого общего варианта, т.е. для *.exe.
|
Имхо, простым батником здесь не обойтись
Цитата:
|
akrav, обычным циклом:
Код:
For %%I In ("E:\13\*.exe") Do %%I |
Если ехе-файл один подойдёт и код
Код:
dir/B *.exe > 1.bat |
Здравствуйте. К сожилению не хватает знаний чтобы немного доделать эту команду For %%I In ("E:\13\*.exe") Do %%I , она работает, но не до конца, после выполнения батником в ХР, открывается всегда один и тот же экзэшник, после его закрытия открывается один и тотже следующий и т. д. , то последывательность открытия всегда одинаковая. Если не отнимет много времени подскажите плз как доделать команду чтобы выбор exe был чисто случайным?
|
Код:
@pause Паузы после теста можно стереть. Цитата:
|
Да нет же, я говорю про случайный выбор. Именно случайный выбор. Экзешники включаются по очереди каждый после закрытия предыдущиго, но последывательность всегда одна и таже. А интересно как сделать чтобы выбор первого включающигося экзешника был случайный? Может как то типа "выключить ехе" - "выключить ехе" и так на время от 2 секунд до 5 путем применения ping -n (2-5?) localhost , но тогда как сделать чтобы выбор количества пингов был случайным? Т.е. пока cmd пингует идет процесс включения - выключения экзэшников, прекращение пинга и есть выбор ехе в этот момент открытого, но как тогда сделать произвольное кол-во пингов? Может кто знает? Хотя мне подойдет и скрипт vbs, для случайного выбора файла, только покароче,может кто знает?
|
Wens,
Да нет же, я говорю про случайный выбор. Именно случайный выбор. Код:
@echo off |
Intexid спасибо за помощь, генерация вроде действительно идет, но экзешники не открываются, как ее остановить? Никакие дописанные снизу команды не действуют. Куда и что надо дописать?
|
Wens
экзешники не открываются попробуем запускать их start'ом как ее остановить пауза или таймер до выхода из цикла Код:
@echo off а продолжаться все это безумие будет, только пока удерживаешь любую клафишу, можно ограничить количество запусков, или частоту, или задержку вставить |
Есть переменная "окружения" %random% - выдает случайное число в пределах от 0 и до 32767
1. Если кол-во экзешников строго определено, то заранее высчитав "вес" вероятности на запуск, укладываемся в одну строчку: (предположим, что экзешников в каталоге 10, тогда вероятность примерно равна 3276 из 32767) for %%f in (MyFolder\*.exe) do if /I 3276 LSS %random% start /wait %%f 2. Если кол-во экзешников "плавает", то нужно в первом цикле пробежаться и подсчитать их кол-во, затем подсчитать вероятность, а третью строку оставить почти в примере выше, но с заменой уровня вероятности на переменную |
Цитата:
Код:
start "" "!current%%j!" |
gora,
Первую запись в кавычках start считает заголовком окна спасибо за совет. пожалуй, буду его придерживаться, хотя, на практике, если честно, не замечал |
Ребят, извините, но я не могу разобраться в нагромождении этих команд. @echo off, cls, pause я отлично понимаю, остальное весьма смутно. Путь к экзешникам я указываю, и начинается процесс генерации, но остановить то его как? Как довести до ума вариант Intexida? Где и что надо дописать? Если start или start /wait , то в каком месте их прописывать? Вариант от NiOLa тоже не работает, пробовал с десятью экзешниками.
|
Время: 12:40. |
Время: 12:40.
© OSzone.net 2001-