Отправить электронную почту в Linux из командной строки
В этой статье вы узнаете, как отправлять электронные письма с помощью популярных почтовых команд. Не менее важно, чтобы вы также научились отправлять вложения электронной почты Linux. Некоторые из используемых параметров командной строки:
- -s: обозначает тему письма
- -a: для обозначения вложения
- -c: для копии адреса электронной почты (CC)
- -b: адрес электронной почты для скрытой копии (BCC)
Linux Отправка электронной почты из командной строки
Мы узнаем о следующих командах для отправки электронных писем в Linux.
- почта
- почта
- дворняга
- упаковка
- отправить письмо
1. Использование почтовой команды
Почтовая команда Linux довольно популярна и обычно используется для отправки электронных писем из командной строки. Почта устанавливается как часть пакетов mailutils и mailx в системах Debian и Redhat соответственно. Две команды обрабатывают сообщения в командной строке. Чтобы установить mailutils в системах Debian и Ubuntu, запустите:
$ sudo apt install mailutils -y
Для дистрибутивов CentOS и RedHat запустите:
$ yum install mailx
Тестирование почтовой команды
Если команда mail успешно установлена, протестируйте приложение, используя следующий формат, и нажмите клавишу ввода:
$ mail –s "Test Email" email_address
Замените email_address
своим адресом электронной почты. Например,
$ mail –s "Test Email" james@example.com
$ echo "sample message" | mail -s "sample mail subject" email_address
Например,
$ echo "Hello world" | mail -s "Test" james@example.com
$ mail -s "subject" -A message.txt email_address
Флаг -A
определяет вложение файла. Например;
$ mail -s "Important Notice" -A message.txt james@example.com
$ mail –s "test header" email_address email_address2
2. С помощью команды mailx
Mailx — это более новая версия команды mail, которая ранее называлась nail в других реализациях. Mailx существует с 1986 года и был включен в POSIX в 1992 году. Mailx является частью составного почтового пакета Debian, используемого для различных сценариев. Эту почтовую утилиту могут использовать пользователи, системные администраторы и разработчики. Реализация mailx также имеет ту же форму, что и синтаксис командной строки почты. Чтобы установить mailx в системах Debian/Ubuntu, выполните:
$ sudo apt install mailx
Чтобы установить mailx в RedHat и CentOS, выполните:
$ yum install mailx
Тестирование команды Mailx
Вы можете использовать команду echo для направления вывода команде mail без запроса CC и тела сообщения, как показано здесь:
$ echo "message body" | mail -s "subject" email_address
Например,
$ echo "Make the most out of Linux!" | mail -s "Welcome to Linux" james@example.com
3. Использование команды MUTT
Mutt — это легкий почтовый клиент командной строки для Linux. В отличие от команды mail, которая может выполнять базовые действия, mutt может отправлять вложенные файлы. Mutt также читает электронную почту с серверов POP/IMAP и подключается к локальным пользователям через терминал. Чтобы установить mutt в системах Debian/Ubuntu, запустите:
$ sudo apt install mutt
Чтобы установить mutt в системах Redhat/CentOS, запустите:
$ sudo yum install mutt
Тестирование команды Mutt
Вы можете отправить пустое сообщение, используя mutt, с < /dev/null
сразу после адреса электронной почты.
$ mutt -s "Test Email" email_address < /dev/null
Например,
$ mutt -s "Greetings" james@example.com < /dev/null
$ echo "Message body" | mutt -a "/path/to/file.to.attach" -s "subject of message" -- email_address
Например,
$ echo "Hey guys! How's it going ?" | mutt -a report.doc -s "Notice !" -- james@jaykiarie.com
4. Использование команды mpack
Команда mpack используется для кодирования файла в сообщения MIME и отправки их одному или нескольким получателям или даже для публикации в разных группах новостей. Чтобы установить mpack в системах Debian/Ubuntu, выполните:
$ sudo apt install mpack
Чтобы установить mpack в системах Redhat/CentOS, выполните:
$ sudo yum install mpack
Тестирование команды mpack
Использование mpack для отправки электронной почты или вложения через командную строку так же просто, как:
$ mpack -s "Subject here" -a file email_address
Например,
$ mpack -s "Sales Report 2019" -a report.doc james@jaykiarie.com
5.Использование sendmail
Эта команда — еще один популярный SMTP-сервер, используемый во многих дистрибутивах. Чтобы установить sendmail в системах Debian/Ubuntu, выполните:
$ sudo apt install sendmail
Чтобы установить sendmail в системах RedHat/CentOS, выполните:
$ sudo yum install sendmail
Тестирование команды sendmail
Вы можете использовать следующие инструкции для отправки электронной почты с помощью команды sendmail:
$ sendmail email_address < file
Например, я создал файл report.doc
со следующим текстом:
Hello there !
Команда для отправки сообщения будет,
$ sendmail < report.doc james@example.com
Резюме
Хотя клиенты электронной почты с командной строкой намного проще и требуют меньше вычислений, вы можете использовать их только для отправки электронной почты на личные домены электронной почты, а не на домены Gmail или Yahoo, поскольку требуется дополнительная аутентификация. Кроме того, вы не можете получать электронные письма с внешних SMTP-серверов. Как правило, намного проще использовать почтовые клиенты с графическим интерфейсом, такие как Thunderbird или Evolution, чтобы избежать проблемы с недоставленными электронными письмами.