用于读取别名输出的Ruby脚本

时间:2009-05-14 15:23:36

标签: ruby-on-rails ruby file

我在/etc/aliases中设置了一个别名,这样每次有电子邮件进入特定地址时,电子邮件的文本都会发送到Ruby脚本。像这样:

示例:|/etc/smrsh/my_script.rb

我需要知道如何在Ruby脚本中读取管道数据。 我编写了一个简单的Perl脚本,可以读取数据..只是无法弄清楚如何在Ruby中实现它。

以下是Perl脚本中的相关行:

my $fout = "/tmp/email.out";

open( EM, ">$fout" );

while( <> )  {
    chomp;
    print EM "$_\n";
}

1 个答案:

答案 0 :(得分:3)

您可以使用STDIN来阅读您的数据。 Perl代码的等价物如下:

out = File.open("/tmp/email.out", "a+")
STDIN.each do |line|
  out.puts line
end