Perl:文件输入到已排序的文件输出
我的 Perl 代码需要帮助。我需要能够读取每行一个单词且至少 50 行的文件。我有一个代码可以打印文件中的每一行,但是如何对这些项目进行排序,然后输出到一个新文件中。
while(<>){
chomp;
print "$_ :is in the file";
}
我正在努力弄清楚如何接收一个文件并将其放入另一个文件(我认为 <> 逐行解析文件)。
I need help with my perl code. I need to be able to read in a file with one word on each line and at minimum 50 lines. I have a code to print each line from the file but how do I take these items sort them and then out put to a new file.
while(<>){
chomp;
print "$_ :is in the file";
}
I am struggling to figure out how to take in a file and (I think the <> parses the files line by line) out put it to another file.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
对于更实用的方法,作为一句话:
此
print
排序
编辑版本的映射
ping 通过chomp
,分隔($,
) 通过换行符。作为写入预定文件的独立脚本:
For a more functional approach, as a one-liner:
This
print
s asort
ed version ofmap
ping each line throughchomp
, separated ($,
) by newlines.As a standalone script which writes to a predetermined file:
分解:
input.txt
被打开以供读取列表上下文中的
<>
<>
返回文件中要sort
sort
排序的 所有行按字母顺序排列行并将列表返回到print
print
打印排序后的列表perl
命令的输出重定向到文件输出.txt
Breakdown:
input.txt
is opened for reading when we use the diamond operator<>
<>
in list context returns all the lines in the file tosort
sort
sorts the lines alphabetically and returns the list toprint
print
prints the sorted listperl
command to the fileoutput.txt