2015-10-05 147 views
0

我有下面的腳本,我需要輸出到文件,如perl.txt而不是顯示在終端窗口。這是我第一次使用perl,如果任何人都可以提供任何好的建議,那麼就無法完成這個任務。Perl腳本幫助輸出到文件

print "Content-type: text/html\n\n"; 

foreach my $key (sort keys %ENV) { 
print "\$ENV{$key} = $ENV{$key}<br/>\n"; 
} 

exit; 
+0

你究竟想要做什麼?你想創建一個直接從命令行運行的perl腳本嗎? – mjuarez

+2

你甚至可以在不知道Perl的情況下使用shell重定向。或者你可以用'perldoc perlintro'花30分鐘;文件操作在該文檔中討論。 – DavidO

回答

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: $!"; 

注有在print聲明$out後面沒有逗號。

+0

非常感謝。這有助於噸。 – ck346

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;