Если вы знаете настоящую силу командной строки, вам не захочется покидать уют Терминала и переходить в другое место для выполнения любой из ваших ежедневных технических действий. Всегда есть способ сделать почти все наши вещи прямо в Терминале. Так почему же отправка электронной почты должна быть иной! Использование Терминала делает некоторые задачи более эффективными и даже быстрыми.
Инструменты командной строки не потребляют слишком много ресурсов и поэтому являются отличной альтернативой широко используемым графическим приложениям, особенно если у вас устаревшее оборудование. Отправка электронной почты из терминала становится особенно удобной, когда вы можете писать сценарии командной строки для отправки электронной почты и автоматизировать весь процесс.
В этой статье мы опишем три способа, с помощью которых вы можете отправлять электронные письма в командной строке Ubuntu (с настроенного идентификатора электронной почты).
- команда ssmtp
- команда sendmail
- команда mutt
Откройте приложение Terminal либо через строку поиска программы, либо сочетанием клавиш Ctrl+Alt+T, а затем используйте один из следующих методов для отправки электронной почты.
Способ 1: Отправка электронной почты с помощью команды ssmtp
ssmtp - это эмулятор sendmail для машин, которые обычно получают почту из централизованного почтового узла (через pop, imap, nfs mounts или другими способами). Она обеспечивает функциональность, необходимую людям и программам для отправки почты через стандартные или /usr/bin/mail пользовательские агенты. Если в вашей системе не установлена эта утилита, выполните следующую команду для ее установки:
1 | sudo apt-get update |
А затем,
1 | sudo apt-get install ssmtp |
Следующую команду можно использовать для составления, а затем отправки электронного письма:
1 | ssmtp username@domain.com |
Нажмите Enter, а затем введите тему письма в следующем формате:
1 | Subject: sample subject comes here |
Когда вы нажмете Enter, вам будет разрешено ввести тело письма. Как только вы закончите вводить тело письма, нажмите Ctrl+D. Это отметит конец тела письма и отправит его на соответствующий ID получателя.
Способ 2: Используйте команду sendmail
Sendmail - это средство маршрутизации электронной почты общего назначения в сети Интернет, которое поддерживает множество методов передачи и доставки почты, включая простой протокол передачи почты (SMTP), используемый для передачи электронной почты через Интернет. Для работы Sendmail в качестве smtp-сервера необходимо, чтобы в вашей системе был установлен smtp. Затем вы можете использовать его следующим образом. Создайте текстовый файл в следующем формате:
1 2 3 4 5 6 | Subject: Тема письма Тело письма строка 1 Строка 2 тела сообщения электронной почты . . . |
Сохраните файл, а затем вы можете использовать имя файла в следующей команде:
1 | sendmail username@domain.com < filename.txt |
Метод 3: Использование команды mutt
Mutt - это небольшая, но очень мощная текстовая программа для чтения и отправки электронной почты под операционными системами UNIX, включая поддержку цветных терминалов, MIME, OpenPGP и режим потоковой сортировки.
Вот синтаксис, который вы будете использовать, чтобы отправить письмо без вложения:
1 | mutt -s "Тема письма" username@domain.com < /dev/null |
Если вы хотите прикрепить к письму файл, используйте следующий формат для указания местоположения вложения:
1 | mutt -s "Тема письма" -a /path/to/file username@domain.com < /dev/null |
После этого ваше письмо будет отправлено указанному получателю.
Существует аналогичная команда mail, которая используется практически так же, как и mutt, для отправки электронной почты из командной строки.
Вы также можете использовать telnet для отправки электронной почты из Терминала. Хотя администраторы Linux обычно используют его для подключения к удаленным портам и серверам, мы рассмотрим процедуру его использования для отправки электронной почты в другой статье. До тех пор вы можете попробовать вышеперечисленные методы и посмотреть, что вам подходит.