2017-07-06 57 views
-1

我有一个邮件脚本来发送彩色输出,但是我不能在Unix机器上使用它,因为MIME::Lite模块没有安装在它上面。没有Perl的彩色输出

任何人都可以提出一种替代方案来获得所需的颜色输出?

use MIME::Lite; 

my (@page_html, @sujet); 

my $file = 'rpt.html'; 

open my $ifh, '<', $file 
    or die "Cannot open '$file' for reading: $!"; 

local $/ = ""; 

my $contents = <$ifh>; 

close($ifh); 

my $msg = new MIME::Lite; 

输出:

<tr><td>test1</td><td bgcolor=red>NOK</td></tr>  
<tr><td>test2</td><td bgcolor=green>OK</td></tr>  
<tr><td>test3</td><td bgcolor=green>OK</td></tr> 

OK应在绿色

NOK应该是红色

+1

您应该安装'MIME :: Lite'。这并不难。但MIME与彩色输出无关。 – Borodin

+0

鲍罗廷,不允许安装.. – Sunny1985

+0

您可以安装它仅供您自己使用。 – Borodin

回答

1

的彩色输出似乎是一个完整的红鲱鱼(哈!)在这里。您有一个您想要作为MIME电子邮件附件发送的文件。

如果您打算使用Perl,那么您需要处于可以从CPAN安装模块的环境中。没有CPAN,你就错过了现代Perl的大部分功能。我建议,为了从Perl编程生涯中移除主要块,需要进行任何讨论。

如果您确实无法将模块安装到系统库中,则可以将它们安装到您的主目录中,并使用use lib或PERL5LIB来适当调整Perl库路径。

当您解决了如何使用CPAN模块的问题时,我们可以谈谈您选择的模块吗? MIME :: Lite isn't exactly deprecated,但十多年来已有更好的替代方案。看看Email::Stuffer

但是,如果您确定没有安装CPAN模块的讨论,另一种方法是使用命令行程序mailx发送您的消息。

$ mailx -a rpt.html [email protected]