首页 > 解决方案 > 将电子邮件保存到 R 中的本地文件夹

问题描述

我有一个很简单的问题。我正在使用 sendmailR 发送自动电子邮件,但是为了透明起见,我想对本地文件夹中发送的内容进行自动存档。

有谁知道如何做到这一点?

标签: remailsendmailr

解决方案


您可以使用已使用的参数创建一个列表,并在sendmail 每次发送新邮件时将其保存为 RDS:

from <- "sendmail@me.com"
to <- "luka@me.com" 
subject <- "Hello from R" 
msg <- "my email" 

mail <- list(from = from, to = to, subject = subject, msg = msg)
sendmail(from, to, subject, msg)

if (file.exists('mailarchive.RDS')) {
  maillist <- readRDS('mailarchive.RDS')
} else {
  maillist <- list()
}

maillist[[length(maillist)+1]] <- mail
saveRDS(maillist,'mailarchive.RDS')

maillist

[[1]]
[[1]]$from
[1] "sendmail@me.com"

[[1]]$to
[1] "luka@me.com"

[[1]]$subject
[1] "Hello from R"

[[1]]$msg
[1] "my first email"
...

推荐阅读