2012-08-13 72 views
-2

周一至周五我收到用户发送的带有Excel文件的电子邮件。我通常下载文件并更改名称并将其保存为CSV文件并将其加载到服务器中。如何自动化电子邮件我

我可以使用Unix自动执行此过程吗?

谢谢。

+1

这真的取决于你如何接收和处理邮件,不是吗?你不会碰巧熟悉'procmail',是吗?事实上,除非我们更了解你的意图,否则这根本就不是一个编程问题。 – dmckee 2012-08-14 02:27:27

回答

4

简答:是的,这是可能可能。

较长的答案:这取决于。方法和可行性将取决于各种因素:

  • 你是如何收到你的电子邮件?您能够在电子邮件服务器上运行脚本吗?还是需要将电子邮件检索到本地计算机?
  • 目标电子邮件是否容易识别(特定发件人/标题/内容)?它是否包含指向Excel文件的链接,还是包含在附件中?
  • 你可以假设一个特定的Excel格式,或者你需要考虑任意的​​Excel版本?
  • 你是什么意思“加载到服务器”?你需要将它复制到一个特定的目录吗?通过FTP/SCP将其移动到远程机器上?
  • 您是否需要处理收到的电子邮件,或者是否可以批量定期处理它们?

这就是说,您的问题很不幸地出现在StackOverflow中(参见FAQ)。您应该先尝试实施您的解决方案,然后在您遇到问题时发布问题,具体为。如果您包含问题的详细信息以及迄今为止尝试过的内容,它会有所帮助。

为了帮助你前进,这里有一些指针:

  • 如果您的电子邮件是远程存储,使用类似fetchmail获取通过POP/IMAP电子邮件到您的本地邮箱
  • 要自动调用到fetchmail,你可以schedule it using cron
  • 一旦电子邮件在您的本地邮箱到来时,你可以使用procmail过滤掉特定的电子邮件,其内容传递到任意命令/脚本处理
  • 您可以使用munpack从电子邮件提取附件
  • 如果你需要上述任何工具的帮助,谷歌有很多索引的相关资源。您也可以询问unix.SESuperUser
  • 要将Excel文件转换为CSV文件,您可以查看xls2csv。如果你不能使用你的发行版的包管理器安装的命令,来源与分布沿catdoc

恐怕我不能设计一个完整的解决方案给你,但我希望这将至少给你一个起点。祝你好运。