命令行搞一切之发送有附件的邮件

简介: 今天我们看到了一种从 Linux 命令行发送电子邮件和附件的方法。还有一些其他程序,如“ mutt ”和“ Sendmail ”,它们与“ mail ”类似,可以用于相同的目的。

发送有附件的邮件


不需要客户端,也不需要有自己的邮箱,当然,大概率会进垃圾桶,但如果是给自己偶尔备份一下文件,谁又在乎垃圾不垃圾呢。

TL;DR


Linux

echo "有附件有温度的邮件" | mailx -s "这里是标题" -r www@qsn.so -a ./attachementfile.zip   yujiaao@msn.com


Mac OS

uuencode ./mysecret_video.gz video.gz | mail -s "好看的小片片"    yujiaao@msn.com

成为高级 Linux 用户的关键是多使用命令行,少使用 GUI;更多的键盘和更少的鼠标!随着 Linux 命令行工具的传播越来越多,使用命令行不仅可以执行管理任务,还可以执行一些非管理性的、实际上至关重要的日常任务。

在本文中,我们将学习如何在 Linux 中使用mail 命令发送带有文件附件的电子邮件。


先决条件

您必须已经在 Linux 机器中使用 SMTP 配置了您的电子邮件。这个电子邮件和服务器将被我们今天要学习的“邮件”程序使用。

在 Linux 中从命令行发送电子邮件

程序“邮件”可用于从命令行发送电子邮件以及带有电子邮件的文件附件。该程序默认不可用,可以使用以下命令安装在基于 Debian 和 Red Hat 的发行版中:

$ sudo apt install mailutils [在Debian/Ubuntu/Mint 上]
$ sudo dnf install mailx [在RedHat/CentOS/Fedora 上]


使用“mail”发送电子邮件的语法如下:

$ echo "电子邮件消息正文" | mail -s "邮件主题" target@domain.com


您可以看到我们正在使用echo 命令输出消息正文并将此输出重定向到“邮件”命令。这是因为'mail'命令从标准输入读取消息正文输入。

从命令行发送带有文件附件的电子邮件

同样,要使用mail附加文件,'-A'可以使用参数:

$ echo "电子邮件消息正文" | mail -s "邮件主题" target@domain.com -A <要附加的文件>



要将电子邮件发送给多个收件人,只需指定以逗号分隔的多个电子邮件 ID。

$ echo "电子邮件消息正文" | mail -s "邮件主题" target1@domain.com;target2@domain.com,target3@domain.com -A <要附加的文件>



要包含一个文本文件作为电子邮件的消息正文,而不是使用echo,您可以将文件的文本重定向到命令,如下所示:

$ mail -s "邮件主题" target@domain.com -A <要附加的文件> <mailtext.txt



结论


今天我们看到了一种从 Linux 命令行发送电子邮件和附件的方法。还有一些其他程序,如“ mutt ”和“ Sendmail ”,它们与“ mail ”类似,可以用于相同的目的。

相关文章
|
移动开发 小程序 IDE
《钉钉应用开发者速成手册》之“开放平台介绍”
什么是钉钉开放平台? 钉钉开放平台是基于钉钉的基础产品和底座,为生态合作伙伴、企业客户及开发者提供所需要的开放能力的应用开发平台。通过钉钉开放平台可以帮助企业快速、低成本的实现高质量的移动微应用,实现生产、管理、协作、运营的业务在线化。
2328 1
《钉钉应用开发者速成手册》之“开放平台介绍”
|
算法 程序员 开发工具
C语言编程规范
C 语言编程规范有助于提升代码的可读性、可维护性和可移植性。主要包括:命名规范(如 `my_variable`、`MAX_SIZE`)、代码缩进与空格、注释(解释逻辑但不过度)、函数设计(短小精悍、参数不超过三个)、错误处理、避免魔法数字、选择合适数据结构、使用标准库、保持代码格式一致及版本控制。遵循这些规范能显著提高团队开发效率和代码质量。
1233 2
|
传感器 数据可视化 机器人
【ROS速成】半小时入门机器人ROS系统简明教程之可视化系统(三)
半小时入门机器人ROS系统简明教程之可视化系统
632 0
|
分布式计算 资源调度 Hadoop
Hadoop运行模式(四)、配置历史服务器、配置日志的聚集、删除HDFS上已经存在的文件、集群启动/停止方式总结、配置mapred-site.xml、配置yarn-site.xml
日志聚集功能好处:可以方便的查看到程序运行详情,方便开发调试。注意:开启日志聚集功能,需要重新启动NodeManager 、ResourceManager和HistoryServer、关闭NodeManager 、ResourceManager和HistoryServer、启动NodeManager 、ResourceManage和HistoryServer、各个模块分开启动/停止(配置ssh是前提)常用、整体启动/停止HDFS、整体启动/停止YARN、各个服务组件逐一启动/停止、分别启动/停止HDFS组件
691 1
Hadoop运行模式(四)、配置历史服务器、配置日志的聚集、删除HDFS上已经存在的文件、集群启动/停止方式总结、配置mapred-site.xml、配置yarn-site.xml
|
前端开发 数据可视化 BizCharts
React使用echarts绘制图表
大家好,今天为大家分享的是React中如何使用echarts图表。 我们都知道,Echarts图表功能非常强大,使用起来也很方便,我们的项目中就用到了Echarts,现在就带大家看看怎么在react中使用Echarts。
|
NoSQL 关系型数据库 应用服务中间件
Linux服务器软件安装教程及项目部署【建议收藏】
Linux服务器软件安装教程及项目部署【建议收藏】
|
Web App开发 安全 前端开发
前端SameSiteCookie问题排查分享
近期排查客户上报的问题时,遇到了一个比较费解的问题,在这边梳理一下排查的流程、遇到的难点、找到的一些相关资料,来对整一个问题进行一个总结,也借此机会做一个分享SameSiteCookie相关的疑难问题处理
539 0
前端SameSiteCookie问题排查分享
|
算法 安全 Java
【Spring Cloud】新闻头条微服务项目:文章内容安全审核(需求分析及前期准备)
主要介绍了文章审核的流程以及如何在移动端文章微服务实现保存文章远程接口,为下一篇文章做准备。
702 0
【Spring Cloud】新闻头条微服务项目:文章内容安全审核(需求分析及前期准备)
西门子S7-1200的七种组织块
本文我们来介绍西门子S7-1200的组织块。S7-1200 CPU为用户提供了不同的块类型来执行自动化系统中的任务。
西门子S7-1200的七种组织块
|
自然语言处理 算法 BI
Python 第3章课后习题参考答案
第3章课后习题参考答案
1666 0