首页 > 解决方案 > 通过 echo 命令使用变量中的数据发送电子邮件

问题描述

每天生成一次 CSV,其中包含一个包含多行名称的单列(每个名称一行)我想将这些名称作为电子邮件发送到某个分发列表。

这是我到目前为止所拥有的:

#!/bin/bash

names=`cat /list_of_names.csv`

echo "$names" | mail -s "You got mail" "email@email.com"

问题是电子邮件总是空的。它使用正确的主题行正确交付,但其中没有文本。当我在控制台中手动检查变量时(回显“$names”),所有名称都正确列出。

为什么邮箱是空的?有人有想法吗?

标签: bashshellunix

解决方案


以防万一您在读取文件时遇到问题

cat /list_of_names.csv 2>&1 | mail -s "You got mail" "email@email.com"

推荐阅读