|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - Скрипт для случайного выбора строки из файла |
|
CMD/BAT - Скрипт для случайного выбора строки из файла
|
Новый участник Сообщения: 9 |
Приветствую, нужен скрипт который из заданного txt-файла выберет рандомную строку и запустит необходимую команду.
Например, есть txt-файл вида: нужно рандомно выбрать любую строчку и запустить например попробовал из темы http://forum.oszone.net/thread-165488.html скрипт @Echo Off For /F "Tokens=1,2 Delims=[]" %%i In ('Find /V /N "" "file.txt"') Do Set $_%%i=%%j For /F "Tokens=*" %%i In ('^<"file.txt" Find /V /C ""') Do Set NUM=%%i :LOOP Set /A RND=1+%RANDOM%/(32768/%NUM%) If %RND% GTR %NUM% Set /A RND-=1 Call Echo %%$_%RND%%% PAUSE >Nul GoTo :LOOP как быть? |
|
Отправлено: 09:03, 03-09-2014 |
Ветеран Сообщения: 874
|
Профиль | Отправить PM | Цитировать @echo off for /f "usebackq delims=" %%i in ("example.txt") do ( call set $%%random%%=%%i ) for /f "tokens=2 delims==" %%i in ('set $') do ( ping "%%i" exit /b ) или @echo off for /f "usebackq delims=" %%i in ("example.txt") do ( call set $%%random%%=%%i ) for /f "delims==" %%i in ('set $') do ( call ping "%%%%i%%" exit /b ) . |
Последний раз редактировалось Georgio, 03-09-2014 в 10:24. Отправлено: 10:01, 03-09-2014 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Новый участник Сообщения: 9
|
Профиль | Отправить PM | Цитировать во блин, спасибо, от души
![]() а можно еще сюда впихнуть рандомное количество пингов т.е. Цитата:
|
|
Последний раз редактировалось mapisic, 03-09-2014 в 16:32. Отправлено: 16:23, 03-09-2014 | #3 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать Цитата mapisic:
|
|
Отправлено: 16:48, 03-09-2014 | #4 |
Ветеран Сообщения: 874
|
Профиль | Отправить PM | Цитировать @echo off for /l %%i in (1 1 100) do ( for /l %%j in (5 1 10) do ( call set #%%random%%=%%j ) ) for /f "delims==" %%i in ('set #') do ( call set raz=%%%%i%% goto:# ) :# for /f "usebackq delims=" %%i in ("example.txt") do ( call set $%%random%%=%%i ) for /f "delims==" %%i in ('set $') do ( call ping "%%%%i%%" -n %raz% exit /b ) |
|
Отправлено: 17:43, 03-09-2014 | #5 |
Новый участник Сообщения: 9
|
Профиль | Отправить PM | Цитировать Georgio, а без exit можно сделать? чтобы повторялось (и рандомное raz и строка в файле) в пределах одного bat-файла? одно и тоже число raz всегда
![]() |
Отправлено: 11:31, 04-09-2014 | #6 |
Ветеран Сообщения: 874
|
Профиль | Отправить PM | Цитировать mapisic, даже без переменной "raz":
@echo off :# setlocal for /f "usebackq delims=" %%i in ("example.txt") do ( call set $%%random%%=%%i ) for /f "delims==" %%i in ('set $') do ( for /l %%j in (1 1 100) do ( for /l %%k in (5 1 10) do ( call set #%%random%%=%%k ) ) for /f "delims==" %%j in ('set #') do ( call ping "%%%%i%%" -n %%%%j%% endlocal goto:# ) ) . |
Отправлено: 12:26, 04-09-2014 | #7 |
Новый участник Сообщения: 9
|
Профиль | Отправить PM | Цитировать Цитата Georgio:
|
|
Отправлено: 13:02, 04-09-2014 | #8 |
Ветеран Сообщения: 874
|
Профиль | Отправить PM | Цитировать mapisic, эта строчка для увеличения выборки. Назначаются по сто разных переменных со значениями "5", "6", "7", "8", "9", "10". Выборка увеличивается с 6 элементов до 600!
|
Отправлено: 13:16, 04-09-2014 | #9 |
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
CMD/BAT - Winnity — диалог выбора папки или файла из командой строки | hb860 | Скриптовые языки администрирования Windows | 27 | 08-11-2012 04:19 | |
PowerShell - [решено] цикл для каждой строки из файла | rudimko | Скриптовые языки администрирования Windows | 15 | 25-10-2012 09:46 | |
CMD/BAT - Скрипт, для чтения нужных строк из txt файла в переменную | mr.R | Скриптовые языки администрирования Windows | 1 | 26-07-2012 12:59 | |
C/C++ - [решено] Случайная выборка строки из файла для Web игры | Чайниг | Программирование и базы данных | 10 | 19-03-2012 21:39 | |
CMD/BAT - [решено] Скрипт для случайного выбора строки из файла | Anonymоus | Скриптовые языки администрирования Windows | 8 | 14-06-2010 04:03 |
|