Как отправить сообщение из командной строки

Содержание
  1. Прием и отправка почты из командной строки
  2. Отправка почты
  3. Отправка писем с вложениями
  4. Отправка писем из скриптов bash/shell
  5. Чтение писем
  6. Команда Maildir-utils
  7. Если вам понравилась статья, поделитесь ею с друзьями:
  8. Справочная информация о команде net send
  9. Использование команды net send
  10. Синтаксис команды net send
  11. Замечания по использованию команды net send
  12. Примеры использования команды net send
  13. Включение и отключение службы сообщений и net send
  14. Как отправлять net send сообщения в Windows 7
  15. Сообщение через командную строку windows 7. Какой команды можно передать сообщение
  16. Общие сведения о команде net send
  17. Программа для отсылки SMS-сообщений (в том числе из командной строки)
  18. Настройка программы
  19. Использование программы
  20. Done
  21. Отправка сообщений электронной почты из командной строки, с помощью утилиты Blat.exe
  22. 1. Утилита  Blat.exe
  23. 2. bat-файлы для отправки сообщений
  24. 3. Заключение
  25. Отправка сообщения всем пользователям RDS фермы, за минуту
  26. Постановка задачи
  27. Методы отправки сообщения на RDS ферме
  28. Как отправить предупреждение пользователям RDS через диспетчер задач
  29. Использование утилиты MSG
  30. Третий метод отправки сообщения пользователям RDS через Send-RDUserMessage

Прием и отправка почты из командной строки

Как отправить сообщение из командной строки

Библиотека сайта rus-linux.net

Оригинал: Linux mail command examples — send mails from command line Silver Moon 27 августа 2013 годаПеревод: А. Кривошей

Дата перевода: декабрь 2013 г.

Обычно для приемки и отправки почты используются веб-сервисы типа gmail и yahoo, или графические почтовые клиенты. Однако в linux мы можем также отправлять или получать почту в командной строке.

Это полезно в таких ситуациях, как отправка почты из скриптов, или в случаях, когда графическая оболочка недоступна.

В этом руководстве описывается, как использовать команду mail для приема и отправки почты.

Отправка почты

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

Пользователи Debian/Ubuntu могут воспользоваться командой apt-get:

# apt-get install mailutils

Пользователи Fedora / CentOS / Red Hat Enterprise Linux (RHEL) могут сделать это с помощью yum:

Теперь команда mail должна быть готова к работе.

Выполните приведенную ниже команду, заменив «user@yourmaildomain.com» на свой адрес электронной почты. Опция s задает тему письма.

$ mail -s «Hello World» user@yourmaildomain.com

Теперь вы можете вводить текст письма. Когда закончите, нажмите «control-D» в начале новой строки.

# mail -s «This is the subject» m00n.silv3r@gmail.comCc: Hi SilverHow are you doingHope its going fine.Bye

Вы отправили первое письмо из командной строки. Содержимое письма можно вставить из файла.В некоторых дистрибутивах командная оболочка сначала запросит в интерактивном режиме ввод других полей, таких как «Cc» (Carbon copy). Просто нажимайте «Enter», чтобы пропустить этот этап.

Когда вы введете адрес или адреса электронной почты, необходимо нажать «Enter», чтобы перейти на новую строку, к телу письма.После нажатия Ctrl+D вы возвращаетесь в командную строку без каких либо дополнительных оповещений. Однако ваше письмо было отправлено.

Интересно, что если вы ничего не введете в теле письма и нажмете Ctrl+D, команда mail отреагирует на это:

# mail -s «This is the subject» m00n.silv3r@gmail.comCc: Null message body; hope that's ok

Если тело письма хранится у нас в отдельном файле, мы можем напрямую использовать его для отправки письма. Это полезно при вызове команды mail из скриптов, или других программ, написанных, например, на perl или php.

$ mail -s «Hello World» user@yourmaildomain.com < /home/user/mailcontent.txt

Или быстрая отправка письма одной строкой:

# echo «This is the message body» | mail -s «This is the subject» m00n.silv3r@gmail.com

Другие полезные параметры команды mail:

-s subject (тема письма)-c email-address (CC — отправка копии письма по адресам email-address)

-b email-address (BCC — отправка скрытой копии письма по адресам email-address)

Ниже пример использования этих опций:

$ mail -s «Hello World» user@yourmaildomain.com -c usertocc@yourmaildomain.com -b usertobcc@yourmaildomain.com

Возможно задавать несколько получателей, перечисляя их адреса через запятую.

$ mail -s «Hello World» user1@yourmaildomain.com,user2@yourmaildomain.com

Указать адрес отправителя тоже несложно, но здесь есть своя хитрость. После отправляемого письма необходимо добавить перед своим адресом следующую последовательность символов:

(двойное тире) (пробел) (одинарное тире) (без пробела) f

Ниже пример:

$ mail -s «Hello World» user@yourmaildomain.com — -f from_user@yourmaildomain.com

Однако приведенная выше последовательность может работать в centos, но не в debian или ubuntu. В этих системах используется альтернативный синтаксис:

# echo «This is the message body» | mail -s «This is the subject» m00n.silv3r@gmail.com -aFrom:blog@binarytides.com

Опция a в целом добавляет дополнительные заголовки. Чтобы задать с ее помощью отправителя, используется следующий синтаксис:

# echo «This is the message body» | mail -s «This is the subject» m00n.silv3r@gmail.com -aFrom:Blogger\

Обратите внимание, что бы экранируем угловые скобки, так как они могут иметь свое назначение для командной оболочки.

Отправка писем с вложениями

Команда mail используется до сих пор, так как это простой и быстрый способ отправки писем, однако она, к сожалению, не поддерживает отправку вложений. Теперь мы сделаем следующий шаг и откроем для себя MUTT. Это очень мощный консольный почтовый клиент, и он умеет намного больше, чем просто отправка писем с вложениями, но в данном случае нас интересует именно эта возможность.

Если mutt по умолчанию у вас не установлен, вы можете сделать это с помощью apt-get или yum от имени root (или используя sudo):

Для пользователей Debian / Ubuntu:

Для пользователей Fedora / CentOS или Red Hat Enterprise Linux (RHEL):

Теперь вы можете отправлять письма с вложениями из командной строки.

Отправка простого письма:

# echo «This is the message body» | mutt -s «hello» m00n.silv3r@gmail.com

Отправка письма с вложением:

$ mutt -s «Hello World» -a /home/user/file_to_attach.tar.gz user@yourmaildomain.com < home/user/mailcontent.txt

Все просто.

Отправка писем из скриптов bash/shell

Теперь давайте копнем глубже и попробуем отправить письмо из скрипта оболочки. Ниже простой скрипт, отправляющий информацию по использованию диска.

#!/bin/bashdu -sh | mail -s «disk usage report» user@yourmaildomain.com

Откройте новый файл, вставьте в него приведенные выше строки, сохраните и запустите. Вы получите письмо, содержащее вывод команды «du -sh».

И последняя хитрость в письмах из командной сроки — добавление вложений к письмам, отправляемым из скриптов.

Предположим, вам необходимо сделать резервную копию директории с конфигурационными файлами, заархивировать ее и отправить в качестве вложения с помощью mutt:

#!/bin/bashtar -zcf /home/user/backup.tar.gz /home/user/files_to_backupecho «Archived configuration files» | mutt -a /home/user/backup.tar.gz -s «backup data» user@yourmaildomain.com

Команда echo в начале третьей строки добавляет текст «Archived configuration files» в тело письма.

Чтение писем

До сих пор мы рассматривали отправку писем из командной строки. На самом деле также легко можно читать письма из командной строки:

Вы вероятно заметили, что для отправки и получения писем мы используем одну и ту же команду. Однако для чтения писем не нужно добавлять никаких опций.
Ниже простой вывод:

$ mailHeirloom Mail version 12.4 7/29/08. Type ? for help.»/var/spool/mail/hcg»: 2 messages 2 new>N 1 hcg@hcghost.localdomain Thu Aug 1 16:53 81/3034 «Hello World»N 2 hcg@hcghost.localdomain Thu Aug 1 16:54 82/3061 «disk usage report»&

Первая строка вывода — это версия программы mail. Вторая строка говорит о том, что имеется два сообщения, оба непрочитанные, и почта хранится в файле /var/spool/mail/hcg.У всех пользователей linux файл с почтой находится в директории /var/spool/mail/. При получении нового письма оно добавляется в конец этого файла. После информации о файле выводится список писем.

Настоятельно рекомендуется не редактировать этот файл без использования mail или аналогичной программы. Читать или производить поиск писем лучше всего с помощью grep.

Чтобы прочитать первое письмо, просто введите 1 и нажмите enter. При чтении письма, если вам необходимо вернуться к списку писем, просто нажмите «q».

Символ > показывает, какое из писем в настоящее время является текущим.

Команда Maildir-utils

«mu» — это набор утилит командной строки для Linux/Unix, который позволяет производить быстрый поиск писем.

Пользователи Debian/Ubuntu могут установить его с помощью apt-get:

# apt-get install maildir-utils

Пользователи Fedora / CentOS / Red Hat Enterprise Linux (RHEL) могут использовать yum:

# yum install maildir-utils

Ниже пара простых команд из этого пакета:

$ mu find from:william subject:report

для поиска писем от william с темой report.

Чтобы проверить текущие настройки почты, используется опция info.

# mu-tool infoVERSION=2.99.97SYSCONFDIR=/etcMAILSPOOLDIR=/var/mail/SCHEME=mboxLOG_FACILITY=mail…..

Итак, можно подвести итоги. На самом деле получение и отправление писем из командной строки не представляет особой сложности, если вы знаете, что делаете.

Если вам понравилась статья, поделитесь ею с друзьями:

Источник: http://rus-linux.net/MyLDP/consol/mails.html

Справочная информация о команде net send

Как отправить сообщение из командной строки

1) Скачайте и установите Winsent Messenger или Winsent Innocenti на те компьютеры сети, на которых необходимо получать сообщения.

2) Скачайте и установите утилиту Sent и Winsent Messenger на те компьютеры сети, с которых необходимо отправлять сообщения.

3) Выполните необходимые настройки операционной системы.

Теперь вы можете отправлять и получать NET SEND сообщения в Windows 7. Если необходима отправка сообщений из командной строки используйте команду sent, в остальных случаях используйте возможности Winsent Messenger.

1. Общие сведения о команде net send

2. Использование команды net send
3. Синтаксис команды net send
4. Замечания по использованию команды net send
5. Примеры использования команды net send
6. Включение и отключение службы сообщений и net send
7. Как отправлять net send сообщения в Windows 7

Net send это консольное приложение, входящее в состав некоторых версий Windows и предназначенное для отправки сообщений по локальной сети другому пользователю, компьютеру или псевдониму. Команда доступна только в Windows NT, 2000, XP, 2003 и недоступна в Windows 7, Vista, ME, 98, 95 и старше. В Windows XP начиная с Service Pack 2 команда net send по умолчанию отключена.

Использование команды net send

Для работы программы net send должна быть запущена служба сообщений Windows. Фактически, команда net send является лишь интерфейсом командной строки к службе сообщений, которая и занимается непосредственно отправкой и получением сообщений.

Для возможности получения сообщений на компьютере, на который отправляется сообщение, также должна быть запущена служба сообщений или другая программа, использующая тот же самый протокол для обмена сообщениями. Сообщение может быть отправлено только активному объекту в сети.

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

Для отправки собщений командой net send, запустите командный интерпретатор (командную строку). Чтобы запустить командный интерпретатор выберите пункт Выполнить из меню Пуск, наберите cmd и нажмите кнопку OK.

Используете команду net c параметром send и другими параметрами в соответствии с синтаксисом команды. Служба сообщений отображает полученные сообщения в стандартном диалоговом окне сообщений Windows.

Синтаксис команды net send

Команда net send имеет следующий синтаксис:

net send {username | * | /domain[:domainname] | /users} message

где

username — имя пользователя, имя компьютера или псевдоним, которому требуется отправить сообщение;

* — отправка сообщений всем членам домена или рабочей группы;

/domain[:domainname] — отправка сообщения всем именам в домене компьютера или в домене domainname;

/users — отправка сообщения всем пользователям, подключенным к серверу;

message — текст сообщения.

Замечания по использованию команды net send

Если аргументы параметров команды содержат пробелы, их следует заключать в кавычки.

Возможны трудности при использовании длинных имен получателей сообщений. Имена, используемые службой сообщений, имеют длину до 15 знаков.

Предельная длина широковещательных сообщений составляет 128 знаков. Предельная длина персональных сообщений — 1600 знаков.

Примеры использования команды net send

Чтобы отправить сообщение «Отправить сообщение по локальной сети можно командой net send» пользователю ivanov введите:

net send ivanov Отправить сообщение по локальной сети можно командой net send

Чтобы отправить сообщение всем пользователям, подключенным к компьютеру, с которого отправляется сообщение, введите:

net send /users Всем немедлено выйти из 1С!

Чтобы отправить сообщение всем пользователям в домене ukmz введите:

net send /domain:ukmz Электричество в здании будет отключено через 5 минут

Чтобы отправить сообщение всем пользователям в домене компьютера, с которого отправляется сообщение, введите:

net send * Господа, совещание при генеральном директоре состоится в 13:00

Включение и отключение службы сообщений и net send

Включение и отключение службы сообщений возможно посредством как консоли MMC (оснастка Службы) так и с помощью командной строки. Для выполнения этих операций необходимо обладать правами администратора.

Для включения службы сообщений с помощью консоли MMC выполните следующую последовательность действий:Зайдите в Панель управления. Откройте папку Администрирование, Службы. Найдите в списке «Службу сообщений» (Messenger). Откройте окно свойств службы.

Выберите значение 'Авто' из списка 'Тип запуска' если вы хотите чтобы служба автоматически запускалась при загрузке Windows. Затем нажмите кнопку Пуск. Нажмите кнопку ОК.

Для отключения службы сообщений выполните следующую последовательность действий:Зайдите в Панель управления. Откройте папку Администрирование, Службы. Найдите в списке «Службу сообщений» (Messenger). Откройте окно свойств службы. Выберите значение 'Вручную' из списка 'Тип запуска'. Затем нажмите кнопку Стоп. Нажмите кнопку ОК.

Для включения службы сообщений из командной строки введите в командном интерпретаторе следующие команды:

sc config messenger start= auto
net start messenger

Для отключения службы сообщений из командной строки введите в командном интерпретаторе следующие команды:

net stop messenger
sc config messenger start= disabled

Как отправлять net send сообщения в Windows 7

Для отправки net send сообщений в тех версиях Windows где эта команда отсутствует (Windows 7, Vista, ME, 95, 98) можно использовать стороннее программное обеспечение. Предлагаем вам использовать две программы: WinSent Messenger и утилиту Sent.

WinSent Messenger это мессенджер для локальный сети, совместимый с net send. Утилита Sent предназначена для отправки сообщений из командной строки.

Более подробная информация доступна на страницах этих программных продуктов:

WinSent Messenger — мессенджер для локальный сети

Sent — утилита для отправка net send сообщений из командной строки в Windows 7/Vista.

Источник: https://winsent.ru/rus/netsend/

Сообщение через командную строку windows 7. Какой команды можно передать сообщение

Как отправить сообщение из командной строки

Использование команды net send

Для работы программы net send должна быть запущена служба сообщений Windows. Фактически, команда net send является лишь интерфейсом командной строки к службе сообщений, которая и занимается непосредственно отправкой и получением сообщений.

Для возможности получения сообщений на компьютере, на который отправляется сообщение, также должна быть запущена служба сообщений или другая программа, использующая тот же самый протокол для обмена сообщениями. Сообщение может быть отправлено только активному объекту в сети.

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

Для отправки собщений командой net send, запустите командный интерпретатор (командную строку).

Чтобы запустить командный интерпретатор выберите пункт Выполнить из меню Пуск, наберите cmd и нажмите кнопку OK.

Используете команду net c параметром send и другими параметрами в соответствии с синтаксисом команды. Служба сообщений отображает полученные сообщения в стандартном диалоговом окне сообщений Windows.

Синтаксис команды net send

Команда net send имеет следующий синтаксис:

net send {username | * | /domain[:domainname] | /users} message

username — имя пользователя, имя компьютера или псевдоним, которому требуется отправить сообщение;

* — отправка сообщений всем членам домена или рабочей группы;

/domain[:domainname] — отправка сообщения всем именам в домене компьютера или в домене domainname;

/users — отправка сообщения всем пользователям, подключенным к серверу;

message — текст сообщения.

Замечания по использованию команды net send

Если аргументы параметров команды содержат пробелы, их следует заключать в кавычки.

Возможны трудности при использовании длинных имен получателей сообщений. Имена, используемые службой сообщений, имеют длину до 15 знаков.

Предельная длина широковещательных сообщений составляет 128 знаков. Предельная длина персональных сообщений — 1600 знаков.

Примеры использования команды net send

Чтобы отправить сообщение «Отправить сообщение по локальной сети можно командой net send» пользователю ivanov введите:

net send ivanov Отправить сообщение по локальной сети можно командой net send

Чтобы отправить сообщение всем пользователям, подключенным к компьютеру, с которого отправляется сообщение, введите:

net send /users Всем немедлено выйти из 1С!

Чтобы отправить сообщение всем пользователям в домене ukmz введите:

net send /domain:ukmz Электричество в здании будет отключено через 5 минут

Чтобы отправить сообщение всем пользователям в домене компьютера, с которого отправляется сообщение, введите:

net send * Господа, совещание при генеральном директоре состоится в 13:00

Включение и отключение службы сообщений и net send

Включение и отключение службы сообщений и net send

Включение и отключение службы сообщений возможно посредством как консоли MMC (оснастка Службы) так и с помощью командной строки. Для выполнения этих операций необходимо обладать правами администратора.

Для включения службы сообщений с помощью консоли MMC выполните следующую последовательность действий: Зайдите в Панель управления. Откройте папку Администрирование, Службы.

Найдите в списке «Службу сообщений» (Messenger). Откройте окно свойств службы. Выберите значение «Авто» из списка «Тип запуска» если вы хотите чтобы служба автоматически запускалась при загрузке Windows.

Затем нажмите кнопку Пуск. Нажмите кнопку ОК.

Для отключения службы сообщений выполните следующую последовательность действий: Зайдите в Панель управления. Откройте папку Администрирование, Службы. Найдите в списке «Службу сообщений» (Messenger). Откройте окно свойств службы. Выберите значение «Вручную» из списка «Тип запуска». Затем нажмите кнопку Стоп. Нажмите кнопку ОК.

Для включения службы сообщений из командной строки введите в командном интерпретаторе следующие команды:

sc config messenger start= auto
net start messenger

Для отключения службы сообщений из командной строки введите в командном интерпретаторе следующие команды:

net stop messenger
sc config messenger start= disabled

Как отправлять net send сообщения в Windows 7

Для отправки net send сообщений в тех версиях Windows где эта команда отсутствует (Windows 7, Vista, ME, 95, 98) можно использовать стороннее программное обеспечение.

Предлагаем вам использовать две программы: WinSent Messenger и утилиту Sent. WinSent Messenger это мессенджер для локальный сети, совместимый с net send. Утилита Sent предназначена для отправки сообщений из командной строки.

Более подробная информация доступна на страницах этих программных продуктов:

WinSent Messenger — мессенджер для локальный сети

Проверьте, поддерживает ли система команду msg . Функционал этой команды во многом аналогичен функционалу неиспользуемой команды net send . Но эта команда работает только в профессиональной и корпоративной версиях Windows. Если вы работаете в Windows Домашняя, обновите систему до версии Профессиональная или Корпоративная, чтобы получить возможность пользоваться командой msg .

  • Чтобы узнать версию Windows, нажмите ⊞ Win + Pause или щелкните правой кнопкой мыши по «Компьютер» и выберите «Свойства». Версия Windows отобразится в разделе «Издание Windows».

Откройте командную строку. Как и net send , команда msg запускается из командной строки. Командная строка запускается разными способами (в зависимости от версии Windows), или просто нажмите ⊞ Win и введите cmd.

  • Windows Vista/7: откройте командную строку из меню «Пуск».
  • Windows 8.1/10: щелкните правой кнопкой мыши по кнопке «Пуск» и выберите «Командная строка».
  • Windows 8: нажмите ⊞ Win + X и выберите «Командная строка».
  • Введите команду. Введите msg и нажмите Пробел. Далее нужно ввести информацию, которая содержит текст и направление сообщения.

  • Определите получателя сообщения. По сравнению с net send , команда msg обладает дополнительными опциями.

    • msg имя пользователя – введите имя конкретного пользователя.
    • msg сеанс – введите имя конкретного сеанса.
    • msg ID сеанса – введите идентификатор конкретного сеанса.
    • msg @ filename – введите имя файла, который содержит список имен пользователей, сеансов и/или идентификаторов сеансов. Полезно для отправки сообщений сотрудникам отделов.
    • msg * – сообщение будет отправлено всем пользователям, которые подключены к серверу.
  • Укажите сервер, пользователям которого нужно отправить сообщение (если хотите). Если нужно отправить сообщение пользователю, который подключен к другому серверу, после информации о получателе введите информацию о сервере. Если сервер не указан, сообщение будет отправлено на текущий сервер.

    • msg * /server: имя сервера
  • Задайте ограничение по времени (если хотите). Можно задать ограничение по времени, чтобы указать интервал ожидания подтверждения от получателя. Временной модификатор вводится после информации о сервере (если она есть).

    • msg * /time: секунды (например, 300 секунд для пятиминутного интервала)
  • Введите текст сообщения. После ввода различных параметров введите текст сообщения. Или нажмите ↵ Enter, и система предложит ввести текст сообщения в отдельной строке.

    • Например: msg @salesteam /server:EASTBRANCH /time:600 Поздравляю с увеличением продаж в этом квартале!
  • Отправьте сообщение. Для этого нажмите ↵ Enter. Адресат получит его немедленно.

    • Команда msg предназначена для отправки сообщений пользователям терминалов, а не только разным компьютерам, подключенным к одной сети.
  • Устраните неполадки. При работе с msg можно столкнуться со следующими ошибками:

    • «msg» is not recognized as an internal or external command, operable program or batch file. (msg не распознается в качестве внутренней или внешней команды, исполняемой программы или пакетного файла). В этом случае версия Windows не поддерживает msg . Обновите Windows до версии Профессиональная.
    • Error 5 getting session names (Ошибка 5 получение имен сеансов) или Error 1825 getting session names (Ошибка 1825 получение имен сеансов). Ошибка при общении с получателем. Можно попытаться устранить такую неполадку, если на компьютере получателя открыть редактор реестра (для этого выполните команду regedit), перейти в HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server и изменить значение параметра «AllowRemoteRPC» с 0 на 1.
  • На те компьютеры сети, с которых необходимо отправлять сообщения.

    Общие сведения о команде net send

    Net send это консольное приложение, входящее в состав некоторых версий Windows и предназначенное для отправки сообщений по локальной сети другому пользователю, компьютеру или псевдониму. Команда доступна только в Windows NT, 2000, XP, 2003 и недоступна в Windows 7, Vista, ME, 98, 95 и старше. В Windows XP начиная с Service Pack 2 команда net send по умолчанию отключена.

    Программа для отсылки SMS-сообщений (в том числе из командной строки)

    Как отправить сообщение из командной строки

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

    Неприятность произошла в субботу, в результате чего, к утру понедельника в конторе не осталось ни одного сервера в “своем уме”. А температура в серверной поднялась до 45 — 50 градусов (при +12 на улице).

    В общем (слава HP!), все серверы выжили, инцидент исчерпан, но такая ситуация подвигла меня на некоторые действия.

    А именно: решил я замутить систему оповещения себя любимого обо всех неприятностях, произошедших в конторе в мое отсутствие. Звеном для построения этой системы стала программка, которую я решил выложить здесь: на случай, что может кому-нибудь пригодится.

    Программка отправляет SMS-сообщение через любой подключенный к компьютеру GSM-модем или сотовый телефон. (Я писал ее имея в наличии 3G-модем HUAWEI E1550 с оператором МТС, но затем проверял на сотовом телефоне Sony Ericsson C510i с оператором Теле2, так что должна работать и с другими устройствами, поскольку протоколы стандартные почти для всех устройств).

    Отправлять сообщения можно как вручную, вводя номер и текст сообщения прямо в окне программы, так и используя параметры командной строки, а именно это и подходит для автоматизированной работы моей системы оповещения. Именно так я и использую ее в своих скриптах.

    Итак, представляю вашему вниманию программу SMSSender. Программа написана на C#, поэтому для работы необходима предустановленная платформа Microsoft .Net Framework не ниже версии 2.0.

    Настройка программы

    Настройка программы очень проста.

    1. Подключаем к компьютеру GSM-модем или сотовый телефон, ждем, пока установятся драйверы, если они небыли установлены.

    2. Запускаем программу SMSSender, нажимаем кнопку с троеточием возле поля «Модем»

    3. В открывшемся окне выбираем нужный нам модем (на случай, если их будет несколько)

    4. Далее, заходим на закладку «Настройки» и нажимаем кнопку «Тест модема». Если все нормально, то появится окно «Тест прошел успешно», с текстом ответа модема. В некоторых случаях придется порулить настройками порта, но обычно это лишнее.

    5. После этого, чтобы настройки сохранились, необходимо нажать кнопку «Сохранить и закрыть». При желании можно проверить работу программы, переключившись на закладку «Отправить СМС», введя там номер телефона абонента, текст сообщения и нажав кнопку «Отправить SMS». В случае успешной отправки появится окно «Сообщение отправлено успешно».

    После настройки программы и нажатия кнопки «Сохранить и закрыть», окно программы закроется, а настройки будут сохранены. Теперь можно приступать к использованию. Внимание! Закрытие окна программы кнопкой-крестиком не сохраняет настройки!

    Использование программы

    Ручной режим отправки прост: запустить программу без параметров, ввести номер телефона, сообщение, нажать кнопку «Отправить SMS» и все.

    Второй режим работы программы – с параметрами командной строки. В данном режиме тоже нет ничего сложного: указываем программе параметры и наслаждаемся. Окно программы при этом не появляется, она сама закрывается после окончания работы.

    Допустимые параметры командной строки:

    -n”номер телефона”Номер телефона абонента в международном формате, например +79107899999. Кавычки обязательны. Данный параметр может быть опущен, в этом случае SMS будет отправлена на последний использованный номер
    -m”номер телефона”Текст сообщения. Максимальная длина сообщения 160 символов для сообщений латинскими буквами и 70 символов для сообщений на русском языке. Длинные сообщения обрезаются. Кавычки обязательны.
    -fОтправлять сообщение как Flash-SMS. В этом случае SMS приходит на телефон получателя и сразу же отображается на экране.
    -tОтправлять сообщение в текстовом режиме. Это упрощенный протокол отправки сообщения. Возможен только для сообщений латинскими буквами. Не поддерживается некоторыми устройствами. В общем, этот параметр обычно не применяется
    -lВести лог в текстовом файле. Файл появляется в папке с программой и будет называться «log.txt»
    -l”Путь и имя файла”Вести лог в указанном текстовом файле. Кавычки обязательны.
    -?Показать подсказку

    Вместо символа «–» можно использовать символ «/»

    Вот несколько примеров:

    smssender.exe -n”+79107899999” –m”Привет, дружище!” –l

    smssender.exe /m”Привет!”

    В общем, все просто.

    Done

    Еще раз повторюсь: программа написана на C#, поэтому для работы необходима предустановленная платформа Microsoft .Net Framework не ниже версии 2.0

    В общем, программа проста как 3 копейки. Может, кому пригодится.

    Источник: http://hardisoft.ru/soft/samodelkin-soft/programma-dlya-otsylki-sms-soobshhenij-v-tom-chisle-iz-komandnoj-stroki/

    Отправка сообщений электронной почты из командной строки, с помощью утилиты Blat.exe

    Как отправить сообщение из командной строки

    Сегодня я расскажу о том, как отправлять сообщения на электронную почту из командной строки. Можно привести массу ситуаций, когда необходимо выполнять данное действие. Например, для контроля выполнения различных регламентных заданий, резервного копирования баз данных и пр. А поможет нам в этом маленькая, удобная и абсолютно бесплатная утилита Blat.exe.

    1. Утилита  Blat.exe

    Скачать программу Blat можно с официального сайта или с текущего. На момент написания статьи последней была версия 3.0.7.

    В архиве 2 папки: full — непосредственно сама программа и docs — документация по программе.

    Для установки необходимо скопировать содержимое папки full в «C:\Windows\system32\» или в любую другую директорию, но в этом случае при вызове программы придется указывать путь к исполняемому файлу. Я в своем примере буду использовать второй вариант.

    Есть возможность сразу создать профиль для отправки сообщений, для этого необходимо выполнить «Blat -install smtp.yoursite.tld youruserid@yoursite.tld». Я не буду рассматривать данный режим работы. Подробнее читайте в файле «readme.txt».

    2. bat-файлы для отправки сообщений

    Если открыть файл «syntax.txt» из прилагаемой документации, то можно увидеть огромный список команд, поддерживаемый данной утилитой, что говорит о ее богатых возможностях.

    Выделим основные и получим следующий «батник» send_email.bat (скачать все файлы в одном архиве) для отправки сообщения с адреса report@mydomen.

    com на адрес user@mydomen.com:

    rem *** Путь к программе blat.exe *** set file_blat=D:\blat\blat.exe rem *** Путь к файлу с текстом сообщения *** set file_text=D:\blat\report.txt rem *** Путь к файлу для сохранения лога *** set file_log=D:\blat\log_blat.txt rem *** Данные отправителя *** set from_server=smtp.mydomen.com set from_port=25 set from_mail=report@mydomen.com set from_name=report set from_pass=password rem *** Данные получателя *** set to_mail=user@mydomen.com set to_subject=»Report» rem *** Отправка сообщения *** %file_blat% %file_text% -server %from_server%:%from_port% -f %from_mail% -u %from_name% -pw %from_pass% -to %to_mail% -s %to_subject% -log %file_log% 

    Таким образом, для отправки сообщения достаточно будет просто вызвать файл send_email.bat:

    Можно доработать файл таким образом, чтобы адрес получателя и тема сообщения задавалась параметрами запуска. Вот содержимое такого bat-файла:

    rem *** Путь к программе blat.exe *** set file_blat=D:\blat\blat.exe rem *** Путь к файлу с текстом сообщения *** set file_text=D:\blat\report.txt rem *** Путь к файлу для сохранения лога *** set file_log=D:\blat\log_blat.txt rem *** Данные отправителя *** set from_server=smtp.mydomen.com set from_port=25 set from_mail=report@mydomen.com set from_name=report set from_pass=password rem *** Отправка сообщения *** %file_blat% %file_text% -server %from_server%:%from_port% -f %from_mail% -u %from_name% -pw %from_pass% -to %1 -s %2 -log %file_log%

    И пример его запуска с параметрами:

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

    rem *** Путь к программе blat.exe *** set file_blat=D:\blat\blat.exe rem *** Путь к файлу с текстом сообщения *** set file_text=D:\blat\report.txt rem *** Путь к файлу для сохранения лога *** set file_log=D:\blat\log_blat.txt rem *** Путь к файлу с адресами получателей *** set file_to=D:\blat\mail_list.txt rem *** Тема сообщения *** set to_subject=»Report» rem *** Данные отправителя *** set from_server=smtp.mydomen.com set from_port=25 set from_mail=report@mydomen.com set from_name=report set from_pass=password rem *** Отправка сообщения *** %file_blat% %file_text% -server %from_server%:%from_port% -f %from_mail% -u %from_name% -pw %from_pass% -tf %file_to% -s %to_subject% -log %file_log%

    Где файл mail_list.txt будет содержать адреса получателей разделенные переносом строки.

    Ну и наконец, приведу пример файла, который я использую в данный момент. В нем все файлы находятся в директории с исполняемым bat-файлом, список адресов берется из файла, а тема письма задается параметром. Сделано это для того чтобы в зависимости от работы задания отсылать письма с разной темой. Например:

    rem Резервное копирование завершилось успешно call D:\blat\send_email.bat «Backup — OK» rem Резервное копирование завершилось c ошибкой call D:\blat\send_email.bat «Backup — ERROR»

    Содержимое файла:

    rem *** Основная директория файла *** set dir=%~dp0 rem *** Путь к программе blat.exe *** set file_blat=%dir%\blat.exe rem *** Путь к файлу с текстом сообщения *** set file_text=%dir%\report.txt rem *** Путь к файлу для сохранения лога *** set file_log=%dir%\log_blat.txt rem *** Путь к файлу с адресами получателей *** set file_to=%dir%\mail_list.txt rem *** Данные отправителя *** set from_server=smtp.mydomen.com set from_port=25 set from_mail=report@mydomen.com set from_name=report set from_pass=password rem *** Отправка сообщения *** %file_blat% %file_text% -server %from_server%:%from_port% -f %from_mail% -u %from_name% -pw %from_pass% -tf %file_to% -s %1 -log %file_log%

    3. Заключение

    Данные примеры не описывают все возможности программы Blat.exe. Она поддерживает сервера SMTP, NNTP, POP3 и IMAP, есть возможность хранить настройки в файле или в реестре, прикреплять вложения в тело письма и многое другое. Я думаю, что взяв за основу предложенные выше файлы, вы сможете написать любой скрипт для отправки электронных сообщений при помощи этой замечательной утилиты.

    Запись опубликована в рубрике cmd с метками Backup, cmd, Email, Бесплатно, Софт. Добавьте в закладки постоянную ссылку.

    Источник: https://tavalik.ru/otpravka-soobshhenij-utilitoy-blat/

    Отправка сообщения всем пользователям RDS фермы, за минуту

    Как отправить сообщение из командной строки

    Добрый день! Уважаемые читатели и гости IT блога Pyatilistnik.org. В прошлый раз мы с вами научились устанавливать библиотеку  VCRUNTIME140.dll в операционных системах Windows. Сегодня я переключу наше внимание с клиентских ОС на серверные.

    Наверняка многие из обычных людей , а тем более системные администраторы знают, что такое терминальные службы, RDS ферма или удаленный стол (Удаленка). Это уже неотъемлемая часть бизнес процессов, для многих организаций. Бывают ситуации, что вам необходимо оповестить всех пользователей терминального сервера, о необходимости в его обслуживании.

    По мимо корпоративной почты вы можете, это делать и средствами Windows и сегодня я покажу, как отправить сообщение всем пользователям RDS фермы.

    Постановка задачи

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

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

    Методы отправки сообщения на RDS ферме

    • Отправка сообщение, через диспетчер задач
    • Отправка сообщения через утилиту командной строки msg
    • Отправка сообщения через командлеты PowerShell

    Как отправить предупреждение пользователям RDS через диспетчер задач

    Во времена терминальных служб на Windows Server 2008 R2, была замечательная возможность массовой отправки сообщений для всех пользователей фермы и делалось, это штатно из диспетчера задач.

    В 2008R2, когда вы запустите диспетчер задач и перейдете на вкладку «Пользователи», то у вас была возможность выделить их всех, щелкнуть правой кнопкой мыши и из контекстного меню выбрать пункт «Отправить сообщение».

    У вас откроется окно «Отправка сообщений», где вы можете задать заголовок сообщения и его текст. После чего нажмите кнопку «Ок».

    В результате все пользователи данного удаленного стола, получат вот такое сообщение в виде всплывающего окна.

    Точно так же в Windows Server 2008 R2 вы могли произвести отправку оповещений, через оснастку «Диспетчер служб удаленных рабочих столов»

    К сожалению начиная с Windows Server 2012 R2, данную возможность для массовой рассылки из диспетчера задач убрали, вы теперь не можете выделить всех пользователей.

    Использование утилиты MSG

    Есть такая замечательная утилита командной строки msg. Что хорошо, вы ей можете пользоваться на любом компьютере, хоть на Windows 8.1. Откройте cmd, желательно от имени администратора и просто введите:

    У вас появится справка по утилите. Конструкция команды будет такой MSG { | | | @ | *} [/SERVER:] [/TIME:] [/V] [/W] []

    • Имя пользователя.
    • Имя сеанса. Удобно если нужно отправить конкретному сеансу.
    • Идентификатор сеанса.
    • @ Файл, содержащий список имен пользователей, сеансов или идентификаторов сеансов, которым отправляется сообщение.
    • * Отправить сообщение всем сеансам на указанном сервере.
    • /SERVER: Сервер (по умолчанию — текущий).
    • /TIME: Интервал ожидания подтверждения от получателя.
    • /V Отображение информации о выполненных действиях.
    • /W Ожидание ответа от пользователя, полезно вместе с /V.
    • Отправляемое сообщение. Если не указано, выдается запрос или принимается ввод из STDIN.

    Если нужно отправить сообщение всем людям локально с того же сервера, где они работают, то просто введите:

    msg * Пожалуйста сохраните все свои файлы и завершите корректно ваши сессии в программах. Сервер будет перезагружен, через 5 минут С уважением, отдел технической поддержки

    Вот так, например в Windows Server 2019 выглядит подобное оповещение на RDS ферме.

    Для отправки оповещения на удаленный сервер вы должны использовать вот такую конструкцию:

    msg * /server:svt2019s01 Пожалуйста сохраните все свои файлы и завершите корректно ваши сессии в программах. Сервер будет перезагружен, через 5 минут С уважением, отдел технической поддержки

    Для отправки на несколько серверов, можно использовать вот такое построение команды:

    invoke-command -computername computer1, computer2 -scriptblock {msg * «Ваш текст сообщения»}

    Использование связки PowerShell и msg

    (Get-ADComputer -SearchBase «OU=Workstations,DC=root,DC=pyatilistnik,DC=org» -Filter *).Name | Foreach-Object {Invoke-Command -ComputerName $_ {msg * «Текст сообщения»}

    Если у вас выскакивает ошибка «Ошибка 1726 при получении имен сеанса» и сообщение не отправляется, то тут вся загвоздка в том, что у той учетной записи от имени которой открыта командная строка, просто не хватает прав. Вам нужно открыть cmd от имени пользователя у кого есть права на тот сервер.

    Третий метод отправки сообщения пользователям RDS через Send-RDUserMessage

    Безусловно самым популярным и универсальным методом отправки оповещений пользователям удаленного рабочего стола, являются командлеты PowerShell. Одним из таких командлетов выступает Send-RDUserMessage.

    Справка по командлеты Send-RDUserMessage — https://docs.microsoft.com/en-us/powershell/module/remotedesktop/send-rdusermessage?view=win10-ps

    Запускаем PowerShell от имени администратора или нужного пользователя. Синтаксис будет такой:

    Send-RDUserMessage -HostServer «svt2019s01.root.pyatilistnik.org» -UnifiedSessionID 1 -MessageTitle «От отдела технической поддержки» -MessageBody

    • HostServer — Имя RDS сервера
    • -UnifiedSessionID — идентификатор сеанса, к сожалению сразу нельзя выбрать всех, обязательно указывать число (Как определить номер сеанса пользователя, читайте по ссылке)
    • -MessageTitle — Текст самого сообщения

    Еще есть скрипт от Microsoft инженера https://gallery.technet.microsoft.com/scriptcenter/Send-NetMessage-Net-Send-0459d235

    Еще есть возможность воспользоваться скриптом гуляющем по интернету:

    $Sessions = Get-TerminalSession -ComputerName «Имя сервера» ForEach ($Session in $Sessions) { Send-RDUserMessage -HostServer $Session.ServerName -UnifiedSessionID $Session.UnifiedSessionID -MessageTitle $MessageTitle -MessageBody $MessageText

    }

    # $ConnectionBroker — Активный сервер RDCB. Если не указан, будет произведена попытка выявить его автоматически (для этого обязательно чтобы скрипт выполнялся на одном из серверов фермы RDS) # $SessionHostCollection – Имя RD-коллекции в которой нужно вывести сообщение.

    $ConnectionBroker = «»
    $SessionHostCollection = «Терминал»

    $MessageTitle = «От кого)) «
    $MessageText = «Текст «

    If ($ConnectionBroker -eq «») { $HAFarm = Get-RDConnectionBrokerHighAvailability $ConnectionBroker = $HAFarm.ActiveManagementServer

    }

    $Sessions = Get-RDUserSession -ConnectionBroker $ConnectionBroker -CollectionName $SessionHostCollection ForEach ($Session in $Sessions) { Send-RDUserMessage -HostServer $Session.ServerName -UnifiedSessionID $Session.UnifiedSessionID -MessageTitle $MessageTitle -MessageBody $MessageText

    }

    Подробнее на https://blog.it-kb.ru/2013/11/15/remote-desktop-services-send-message-to-all-active-rds-farm-users-via-powershell

    Кстати если вы неправильно развернули RDS ферму, то при выполнении скрипта получите сообщение

    Get-RDUserSession : На svt2019s01.root.pyatilistnik.org не развернуты службы удаленных рабочих столов. Эту операцию можно выполнить после их развертывания. Для получения дополнительных сведений.

    На этом у меня все. Мы рассмотрели несколько методов по массовой отправке сообщений пользователям удаленных рабочих столов. С вами был Иван Семин, автор и создатель IT портала Pyatilistnik.org.

    Источник: http://pyatilistnik.org/send-a-message-to-all-users-of-the-rds-farm/

    Делаем просто
    Добавить комментарий

    ;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: