Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - Чтение всего txt файла в переменную bat

Ответить
Настройки темы
CMD/BAT - Чтение всего txt файла в переменную bat

Новый участник


Сообщения: 26
Благодарности: 0

Профиль | Сайт | Отправить PM | Цитировать


Здравствуйте. Нужно прочитать ВЕСЬ файл txt в переменную bat.
Пробовал так
Код: Выделить весь код
set /P file= < file.txt
и так
Код: Выделить весь код
Set file=C:\file.txt 
For /F "usebackq tokens=* delims=" %%i In ("%file%") Do Set body=%%i
Читает только первую строку.
Как прочитать в переменную все строки?

Заранее благодарен

Отправлено: 17:46, 08-09-2012

 

Ветеран


Сообщения: 27449
Благодарности: 8087

Профиль | Отправить PM | Цитировать


binwatch@vk, какова Ваша конечная цель? Что предполагается делать с этой переменной?

Отправлено: 18:21, 08-09-2012 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Новый участник


Сообщения: 26
Благодарности: 0

Профиль | Сайт | Отправить PM | Цитировать


отправлять в email сообщении в качестве тела письма

Отправлено: 18:43, 08-09-2012 | #3


Ветеран


Сообщения: 27449
Благодарности: 8087

Профиль | Отправить PM | Цитировать


binwatch@vk, чем Вы планируете формировать и отправлять письма?

Отправлено: 20:33, 08-09-2012 | #4


Новый участник


Сообщения: 26
Благодарности: 0

Профиль | Сайт | Отправить PM | Цитировать


отправлять с помощью blat
а сам скрипт такой:
Код: Выделить весь код
Chcp 1251 
set /P smtpsender= < email.txt 
set /P smtpuser= < login.txt 
set /P smtppwd= < pass.txt 
set /P subject= < thema.txt 
Set file=mess.txt 
For /F "usebackq tokens=* delims=" %%i In ("%file%") Do Set body=%%i 
set /P mailto= < st.txt
blat.exe -to %mailto% -f "%smtpsender%" -port 587 -u %smtpuser% -pw %smtppwd% -subject %subject% -body %body%

mess.txt в этом файле и хранится текст сообщения

Отправлено: 22:38, 08-09-2012 | #5


Ветеран


Сообщения: 27449
Благодарности: 8087

Профиль | Отправить PM | Цитировать


Чуть выше «-body»:
Цитата blat.exe /?:
-bodyF <file> : file containing the message body
т.е., Вам вовсе не нужно:
Цитата binwatch@vk:
…прочитать ВЕСЬ файл txt в переменную bat. »
Это сообщение посчитали полезным следующие участники:

Отправлено: 22:42, 08-09-2012 | #6


Новый участник


Сообщения: 26
Благодарности: 0

Профиль | Сайт | Отправить PM | Цитировать


Цитата Iska:
Чуть выше «-body»:
Цитата blat.exe /?:
-bodyF <file> : file containing the message body
т.е., Вам вовсе не нужно:
Цитата binwatch@vk:
…прочитать ВЕСЬ файл txt в переменную bat. » »
А как по другому тогда сделать если не читать весь текст в переменную?
Текст сообщения занимает несколько строк.

Не могли бы вы написать в самом коде как надо сделать?

Последний раз редактировалось binwatch@vk, 08-09-2012 в 23:10.


Отправлено: 22:56, 08-09-2012 | #7


Ветеран


Сообщения: 27449
Благодарности: 8087

Профиль | Отправить PM | Цитировать


Попробуйте так (выделил что убрать, что добавить):
Код: Выделить весь код
Chcp 1251 
set /P smtpsender= < email.txt 
set /P smtpuser= < login.txt 
set /P smtppwd= < pass.txt 
set /P subject= < thema.txt 
Set file=mess.txt 
For /F "usebackq tokens=* delims=" %%i In ("%file%") Do Set body=%%i 
set /P mailto= < st.txt
blat.exe -to %mailto% -f "%smtpsender%" -port 587 -u %smtpuser% -pw %smtppwd% -subject %subject% -body %body% -bodyF %file%
Это сообщение посчитали полезным следующие участники:

Отправлено: 23:18, 08-09-2012 | #8


Новый участник


Сообщения: 26
Благодарности: 0

Профиль | Сайт | Отправить PM | Цитировать


Цитата Iska:
Попробуйте так (выделил что убрать, что добавить):
Код:
Chcp 1251
set /P smtpsender= < email.txt
set /P smtpuser= < login.txt
set /P smtppwd= < pass.txt
set /P subject= < thema.txt
Set file=mess.txt
For /F "usebackq tokens=* delims=" %%i In ("%file%") Do Set body=%%i
set /P mailto= < st.txt
blat.exe -to %mailto% -f "%smtpsender%" -port 587 -u %smtpuser% -pw %smtppwd% -subject %subject% -body %body% -bodyF %file%»
Спасибо! Помогло.

А возможно ли через blat и используя этот же скрипт отправить html сообщение?
Если возможно то что нужно изменить?

Последний раз редактировалось binwatch@vk, 08-09-2012 в 23:49.


Отправлено: 23:22, 08-09-2012 | #9


Ветеран


Сообщения: 27449
Благодарности: 8087

Профиль | Отправить PM | Цитировать


Посмотрите: blat.exe html body - Поиск в Google, что-то есть. Я этим вопросом не занимался.
Это сообщение посчитали полезным следующие участники:

Отправлено: 00:17, 09-09-2012 | #10



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - Чтение всего txt файла в переменную bat

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
CMD/BAT - Скрипт, для чтения нужных строк из txt файла в переменную mr.R Скриптовые языки администрирования Windows 1 26-07-2012 12:59
Любой язык - [решено] Скрипт использующий переменную из файла .txt XXXp Скриптовые языки администрирования Windows 27 18-05-2011 21:34
CMD/BAT - [решено] Чтение содержимого текстового файла в переменную kosmopes Скриптовые языки администрирования Windows 2 11-03-2011 12:58
CMD/BAT - [решено] Ввод данных в переменную из txt-файла river123 Скриптовые языки администрирования Windows 1 10-01-2011 18:43
CMD/BAT - [решено] Чтение строки из файла в переменную Николя Скриптовые языки администрирования Windows 42 17-01-2010 19:42




 
Переход