|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - [решено] просканировать несколько строк и отправить |
|
CMD/BAT - [решено] просканировать несколько строк и отправить
|
Старожил Сообщения: 157 |
Добрый день. Имеется скрипт
Ищет маршруты со значением 0.0.0.0 и отправляет на почту первый найденный. Задача, сделать так, что бы отправлял все найденные маршруты, а лучше указанное количество. Вот не знаю, как заставить скрипт обрабатывать не только первую строку, а все найденные строки. Помогите разобраться. |
|
Отправлено: 15:00, 19-02-2019 |
Ветеран Сообщения: 1274
|
Профиль | Отправить PM | Цитировать |
Отправлено: 18:42, 19-02-2019 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Старожил Сообщения: 157
|
Профиль | Отправить PM | Цитировать Цитата alpap:
Теперь обрабатывает все строки, но присылает по одному письму на каждую строку, а хотелось, что бы присылал одно письмо со всеми маршрутами. |
|
Последний раз редактировалось s.i.p.a, 20-02-2019 в 14:19. Отправлено: 12:38, 20-02-2019 | #3 |
Ветеран Сообщения: 3806
|
Профиль | Отправить PM | Цитировать Цитата s.i.p.a:
|
|
Отправлено: 13:50, 20-02-2019 | #4 |
Старожил Сообщения: 157
|
Профиль | Отправить PM | Цитировать Цитата Busla:
Этот скрипт был заброшен в пользу первого, потому что не загонял в тему письма первый маршрут. Письма приходят раз в час и открывать каждое письмо не очень удобно. по этому нужно, что бы в теме писался первый (или первые два маршрута) а в теле уже все найденные маршруты. |
||
Отправлено: 14:19, 20-02-2019 | #5 |
Ветеран Сообщения: 1274
|
Профиль | Отправить PM | Цитировать Цитата s.i.p.a:
@echo off set "s=" for /f "tokens=3-5" %%i in ('route.exe print^|find.exe " 0.0.0.0"') do if not defined s set "s=%%i - %%k"& >>"file.log" (echo %%i - %%k) blat.exe - -to "e.sipovich@ansa-soft.by" -server 192.168.33.200 -f e.sipovich@ansa-soft.by -u e.sipovich@ansa-soft.by -pw es2016 -subject "33.1 routes %s%" -attach "file.log" exit /b ... -attach "file.log" исправьте, если не так. P.S. Переделал под [что бы в теме писался первый] |
|
Отправлено: 14:30, 20-02-2019 | #6 |
Старожил Сообщения: 157
|
Профиль | Отправить PM | Цитировать Цитата alpap:
@echo off set "s=" for /f "tokens=3-5" %%i in ('route.exe print^|find.exe " 0.0.0.0"') do if not defined s set "s=%%i - %%k"& >>"file.log" (echo %%i - %%k) blat.exe c:\\distr\file.log -to "e.sipovich@ansa-soft.by" -server 192.168.33.200 -f e.sipovich@ansa-soft.by -u e.sipovich@ansa-soft.by -pw es2016 -subject "33.1 routes %s%" exit /b 192.168.190.1 - 12 192.168.190.1 - 12 192.168.190.1 - 12 количество строк = сколько раз запустил батник. лог файл не полный и не очищается после запуска. |
|
Отправлено: 15:49, 20-02-2019 | #7 |
Старожил Сообщения: 157
|
Профиль | Отправить PM | Цитировать p.s.
@echo off set "s=" for /f "tokens=3-5" %%i in ('route.exe print^|find.exe " 0.0.0.0"') do if not defined s set "s=%%i - %%k" route print | find " 0.0.0.0"> C:\marshruti.txt blat.exe C:\marshruti.txt -to "e.sipovich@ansa-soft.by" -server 192.168.33.200 -f e.sipovich@ansa-soft.by -u e.sipovich@ansa-soft.by -pw es2016 -subject "33.1 routes %s%" exit /b 0.0.0.0 0.0.0.0 192.168.190.1 192.168.190.250 12 0.0.0.0 0.0.0.0 213.184.244.236 213.184.244.236 2 Отсечь нули, и можно пользоваться. |
Отправлено: 16:08, 20-02-2019 | #8 |
Ветеран Сообщения: 1274
|
Профиль | Отправить PM | Цитировать |
Последний раз редактировалось alpap, 20-02-2019 в 18:29. Отправлено: 18:19, 20-02-2019 | #9 |
Старожил Сообщения: 157
|
Профиль | Отправить PM | Цитировать Спасибо. Исправил и всё заработало.
Итоговый вариант @echo off set "s=" for /f "tokens=3-5" %%i in ('route.exe print^|find.exe " 0.0.0.0"') do >>"file.log" (echo %%i - %%k)& if not defined s set "s=%%i - %%k" blat.exe C:\distr\file.log -to " e.sipovich@ansa-soft.by" -server 192.168.33.200 -f e.sipovich@ansa-soft.by -u e.sipovich@ansa-soft.by -pw ***** -subject "33.1 routes %s%" Del "C:\distr\file.log" exit /b |
Отправлено: 10:23, 21-02-2019 | #10 |
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
CMD/BAT - [решено] замена текста (несколько строк) | Alexander_88 | Скриптовые языки администрирования Windows | 6 | 19-10-2018 19:16 | |
CMD/BAT - [решено] изменить несколько строк в файле | man8531 | Скриптовые языки администрирования Windows | 29 | 27-06-2018 06:27 | |
CMD/BAT - Найти текст в файле и вставить над ним несколько строк | Sergey.l | Скриптовые языки администрирования Windows | 7 | 28-01-2018 23:06 | |
CMD/BAT - Сформировать из 1 файла несколько файлов с разным числом строк | nastasa | Скриптовые языки администрирования Windows | 6 | 11-05-2017 12:15 | |
CMD/BAT - Удалить несколько строк из файла | GhostKU | Скриптовые языки администрирования Windows | 1 | 01-09-2011 18:40 |
|