Вы можете сделать именно то, что вы пытаетесь сделать с помощью программы для отправки сообщений из командной строки S-nail , которая является самой последней ветвью Heirloom mailx , которые являются производными от почты Беркли. Команда mailx
для всех пакетов и будет принимать ввод по каналу stdin
. Пакет представляет собой полнофункциональную программу для работы с командной строкой с широким набором функций и поддержкой вложений.
Для вашего случая вы можете просто сделать:
$ column -ts, file.csv | mailx -s "Subject Line" recipient@somedomain.com
с bash вы также можете использовать процесс подстановки и избежать канала:
$ mailx -s "Subject Line" recipient@somedomain.com < <(column -ts, file.csv)
Или, если вы просто хотите включить файл в качестве вложения, вы можете сделать:
$ echo "attached" | mailx -s "Subject Line" -a file.csv recipient@somedomain.com
Проверьте ваш дистрибутив, поскольку он, вероятно, предоставляет либо s-nail
, либо mailx
пакет для установки.
Пример получающегося E-mail
Включен фрагмент из полного заголовка для отображения форматирования и кодирования.
To: david@nirvana.xxxxxxxxxxx.com
Subject: csv column
User-Agent: Heirloom mailx 12.5 7/5/10
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Message-Id: <20190511072931.BB7AF122BED@wizard.xxxxxxxxxxx.com>
From: david@wizard.xxxxxxxxxxx.com (David C Rankin)
HEADER1 HEADER2 HEADER-3
value value value
value value value
$