Perl - 在将文件写入标准输出的最后一行时丢失

时间:2014-12-24 09:53:51

标签: perl

我在空闲时间学习perl,并且我正在尝试编写将打开并刷新某个文件的简单脚本。 下面的代码段应该打开文件并将其写入标准输出。它确实如此,但不幸的是,它打印的文件没有最后一行。

任何想法为什么?

use strict; 
use warnings;

my $filesizeold = 0;

while(1){
    my $filesize = -s "input.txt";

    if($filesize != $filesizeold) {
        system $^O eq 'MSWin32' ? 'cls' : 'clear';
        open INPUT, "<input.txt";
        while ( <INPUT> ) {
            print;
        }
        close INPUT;
    }

    $filesizeold = $filesize;
}

1 个答案:

答案 0 :(得分:2)

  

也许有像println而不是print?

是的,您可以使用say

http://perldoc.perl.org/functions/say.html

  

打印没有最后一行的文件

我认为你是suffering from buffering