我需要我的Perl代码帮助。我需要能够在每行一个字一个文件,并以最低的50行读取。我有一个代码,以打印从文件中的每一行,但我怎么把这些项目进行排序,然后放了一个新的文件。
while(<>){
chomp;
print "$_ :is in the file";
}
我在努力弄清楚如何采取一个文件,(我认为<>解析按行文件行)出来把它放到其他文件。
对于一个功能更强大的方法,作为一衬垫:
perl -e '$, = "\n"; print sort map { chomp; $_ } <>' input.txt > output.txt
此print
s sort
ed的map
ping版本通过chomp
每行,通过换行分隔($,
)。
作为写入到预定的文件的独立的脚本:
#!/usr/bin/env perl -w
$, = "\n";
open(my $output, ">", "output.txt")
or die "Cannot open output.txt: $!\n";
print $output sort map { chomp; $_ } <>;
close $output;
perl -we 'print sort <>' input.txt > output.txt
分解:
input.txt
被打开阅读时,我们使用钻石操作<>
<>
在列表环境将返回所有行的文件中sort
sort
字母顺序排列的线条和返回列表print
print
打印排序列表perl
命令将文件output.txt
输出