-2

我的 STDOUT 上有一些内容,我希望将这些内容安排到下降表中。

谁能给我推荐一个能处理这种需求的 Perl 模块

在此先感谢,任何小的帮助表示赞赏。

谢谢!阿迪亚

4

3 回答 3

1

Text::TableText::ASCIITable制作两个不同的输出,后者有轮廓。我敢肯定CPAN周围还有更多的东西。您还可以查看format ,这是 Perl 的一个很少使用的功能,用于格式化报告

于 2012-10-03T14:26:19.327 回答
0

在 CPAN 中,您可以使用Text::Table

于 2012-10-03T14:16:44.990 回答
0

假设您想将现有程序中的 STDOUT 通过管道传输到其他内容以对其进行格式化,您可以使用 printf 执行类似的操作

创建一个名为 process.pl 的 perl 脚本

 #/bin/perl
use strict;

while (<>) {
    my $unformatted_input = $_;

    # Assuming you want to split on spaces, adjust if it is in fixed format.
    my @elements = split / +/, $unformatted_input, 4;

    # Printf format string, you can adjust lengths here.  This would take
    #  an input of items in the elements array and make each file 10 characters
    #  See http://perldoc.perl.org/functions/sprintf.html for options
    my $format_string='%10s%10s%10s%10s';

    printf($format_string,@elements);
}

然后,将您的 STDOUT 通过管道传输到此,它将将其格式化为屏幕:

$  yourProcessThatDoesStdout | process.pl
于 2012-10-03T21:33:57.107 回答