我正在尝试将命令输出存储到一个文件中(工作正常),然后我想做的是将文件内容显示到屏幕上。
我的问题是我希望它分部分显示(例如一次显示 20 行)并让用户按 [Enter]
或任意键继续下一部分。我正在考虑将文件内容通过管道传输到 more
但是它会立即显示整个文件内容,而不是按部分显示。
这是我负责打开文件、写入文件然后在屏幕上显示的部分代码。
open FILE, '>', $filename;
print FILE @command;
open FILE, '<', $filename;
while (<FILE>) {
open MORE, '| more';
print MORE;
}
close MORE;
close FILE;
最佳答案
use strict;
use warnings;
my @command = map "output line $_\n", 1..100;
my $page_size = 20;
my $n = 0;
for my $line (@command) {
print $line;
$n ++;
if ($n % $page_size == 0) {
print "--More--";
<>;
}
}
关于linux - 如何将文件内容分段打印到屏幕上?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16534746/