![]() |
BAT считывающий по очереди строки
Нужен BAT который будет читать по очереди строки из файла 1.txt и записывать их в переменную %stroka%
Т.е. нужно примерно такое Код:
@echo off Собрал вот в такой код Код:
@echo off PHP код:
PHP код:
|
Меня терзают смутные сомнения, что в текстовом файле строки именно так и пронумерованы. Сиречь:
Код:
[1]Текст первой строки Код:
@echo off |
Цитата:
Код:
@echo off Цитата:
Цитата:
Update: не доглядел зараз, что коллега Elven уже сделал ровно то же :(. Прошу прощения за повтор. |
На всякий случай, если есть спецсимволы и добавлен учет пустой строки
Код:
@echo off |
Вообще мне это нужно, чтобы по очереди подключаться к множеству RDP, сам код подключения я нашел
Код:
cmdkey /generic:TERMSRV/168.195.218.29 /user:Administrator /pass:admin |
Цитата:
|
Цитата:
Fometra, парсить строку приведенного вида действительно не очень удобно, хотя и не невозможно, но хранить пароль в открытом виде не очень красиво и совсем не есть секурно. Для такой задачи как подключение к многочисленным рабочим столам я бы рекомендовал использовать RDCMan или аналоги. Если же все же использовать вариант с файлом где все хранится в открытом виде, проще будет разместить их в файле с каким-то одним разделителем, а не с разными. Например если разделить символом "_" вариант файла
Код:
109.123.99.18_Administrator_Password то код может быть приблизительно таким. Код:
for /F "delims=" %%i in (1.txt) do ( |
Цитата:
Получился вот такой код: Код:
@echo off Что не так? ![]() |
Упс. Строчку пропустил.
Код:
@echo off |
Всё заработало, только добавил еще pause, чтобы при закрытии окна сервера автоматом не подключался другой, а подключался после нажатии любой кнопки
Код:
@echo off 1. Подключился к серверу 2. Сделал всё, что мне нужно на нём 3. Закрыл окно MSTSC.exe 4. IP LOGIN PASS записались в >> results.txt 5. И мой комментирий >> results.txt Пробовал вот так, но сам комментарий не записывается Код:
@echo off |
Сам разобрался, всем спасибо за внимание)))
Код:
echo !IP! !LOGIN! !PASS! !text! >> results.txt |
Fometra, ИМХО, Брать в качестве разделителя "_" не слишком хорошая идея. Могу ошибаться, но в логине это допустимый символ. А в пароле тем более, плюс "!" тоже, что может привести к неприятностям при работе батника.
Предлагаю взять разделителем пробел. Для строки вида: 192.168.125.15 User Tra La La Код:
@Echo Off |
Да, об этом не подумал, в паролях есть !
|
Цитата:
Как раз с неделю назад в другом месте кто-то успешно опробовал, хотя и не на ftp, пароль из восьми пробелов и в шутку поинтересовался, легко ли его сбрутфорсить, в т.ч. словарной атакой. |
Цитата:
Однако, надо следить, чтобы в конце пароля в строке не было лишних пробелов. Увы, пробелы в начале пароля будут проигнорированы. Для Вашего примера пароля из пробелов скрипт не сработает. В этом случае надо иное решение. Чтобы скрипт отработал, первым в пароле должен быть символ. |
если есть возможность самому редактировать txt, то можно и так сделать, удобно, но на любителя
Код:
@echo off |
В моих паролях нету пробелов, поэтому не беда.
Еще бы добавить, чтобы после чтения IP,LOGIN,PASS из файла 1.txt прочитанная строка удалялась |
Цитата:
удалять проще весь файл, но пока он нужен в нем можно делать изменения да и вообще хранить в качестве шаблона |
Fometra,
Можно "съесть" в память весь файл (если он не слишком большой), удалить его, а затем из памяти брать прочитанные данные.
Код:
@Echo Off |
Время: 09:53. |
Время: 09:53.
© OSzone.net 2001-