我有下面的脚本,我需要输出到文件,如perl.txt,而不是在终端窗口中显示。这是我第一次使用perl,如果有人能提供任何可能很棒的建议,那么我就无法完成这一部分。
print "Content-type: text/html\n\n";
foreach my $key (sort keys %ENV) {
print "\$ENV{$key} = $ENV{$key}<br/>\n";
}
exit;
答案 0 :(得分:4)
您需要open
该文件并将其文件描述符传递给print
。
open(my $out, ">", "perl.txt") or die "perl.txt: $!";
print $out "Content-type: text/html\n\n";
foreach my $key (sort keys %ENV) {
print $out "\$ENV{$key} = $ENV{$key}<br/>\n";
}
close($out) or die "perl.txt: $!";
请注意,$out
语句中的print
后面没有逗号。
答案 1 :(得分:0)
这是一个教程:Writing to files with Perl。
use strict;
use warnings;
# First open a file in write mode
open my $output, '>', 'perl.txt' or die "Can't open file to write: $!";
# use the filehandle with print to write in file instead of printing on terminal
print $output "Content-type: text/html\n\n";
foreach my $key (sort keys %ENV)
{
print $output "\$ENV{$key} = $ENV{$key}<br/>\n";
}
# close the open file
close $output;