我编写了一个ruby cli脚本,该脚本采用CSV并根据所述CSV生成PDF报告。我对Ruby很新,所以尽管它可能不是最好的代码,但我为自己的成就感到自豪。
无论如何,我现在真正想做的是,让我的脚本电子邮件说PDF作为附件。我确定有一个了解SMTP的库,可以代表我发送,但我想修改电子邮件正文,并在发送之前查看附件。因此,最简单的方法是让脚本在我的系统默认邮件客户端中启动一个新的电子邮件,提供收件人,主题和样板文本,并附加生成的文件,类似于mailto:link in a网页(mailto支持附件吗?)。
似乎可能有一个系统命令执行此操作,与Ruby完全无关,我可以使用我的Ruby脚本调用。那没关系。如果它依赖于平台,那我就是OSX,但我四处走动,所以对Windows和Linux解决方案也感兴趣。
我猜B计划将一个简单的CLI编辑器插入我的Ruby脚本,让我编辑电子邮件文本,然后使用SMTP库发送电子邮件。这似乎更难,除非它已经完成。
答案 0 :(得分:0)
实际上,您可以使用console_runner gem从命令行界面(CLI)执行任何ruby文件。如果您已经编写了代码,则可以从命令行运行它。您需要做的就是在Ruby代码中添加注释(类似YARD的语法),然后从命令行执行它:
const a = 2;
const b = 3;
const c = (a, b);
console.log(c);
// => 3;
function one() {
console.log("one ran");
return 1;
}
function two() {
console.log("two ran");
return 2;
}
const d = (one(), two());
// => one ran
// => two ran
// => 2
/path/your_file.rb :
$ c_run /path/your_file.rb say_hello