![如何指定用于邮件命令的服务器](https://linux22.com/image/611850/%E5%A6%82%E4%BD%95%E6%8C%87%E5%AE%9A%E7%94%A8%E4%BA%8E%E9%82%AE%E4%BB%B6%E5%91%BD%E4%BB%A4%E7%9A%84%E6%9C%8D%E5%8A%A1%E5%99%A8.png)
我正在开发一个 crontab 作业,该作业运行一个脚本,该脚本在特定目录中查找文件是否存在。如果文件不存在,则退出。但是,如果文件存在,则使用 mail 命令发送电子邮件。
但是由于这是一个更安全的系统,电子邮件服务器没有配置,所以我只有邮件命令行,无法在系统上安装其他软件。我如何从邮件命令行指定要使用的服务器。
答案1
我本来想说“你不能”,但显然你可以。 mailx
,这是在大多数现代 UNICES 上作为命令安装的mail
,在手册页中说你可以设置一个变量:
通常,mailx 直接调用 sendmail(8) 来传输消息。如果设置了 smtp 变量,则将改用与此变量值指定的服务器的 SMTP 连接。如果 SMTP 服务器不使用标准端口,则可以给出 server:port 的值,其中 port 为名称或数字。
检查man
邮件命令页面以了解如何进行设置。