我想使用 perl 对生成的输出进行控制。我希望以天,小时,分钟和秒的形式显示时间(以秒为单位),以使其人类可读的格式。
代码
my $start = time;
<some other perl codes>
my $duration = time - $start;
print "Total Execution time: $duration s\n";
输出是311052 s
所需输出为3天14小时24分12秒
注意:我是Perl的新手。在你标记之前这是重复的,我做了我的研究。我已经完成了所有 stackoverflow,其中讨论了类似的解决方案,没有人帮助过。我的代码非常小。可以添加的几行更改可能是什么。
答案 0 :(得分:12)
您可以使用Time::Piece
和Time::Seconds
模块,这些模块将为您完成所有这些
在这个程序中,我简单地将pi天添加到当前日期和时间以获得代表性持续时间。当然,您将使用实际时间
use strict;
use warnings;
use Time::Piece;
use Time::Seconds qw/ ONE_DAY /;
my $start = localtime;
my $end = $start + int(355/113 * ONE_DAY);
my $duration = ($end - $start)->pretty;
print "Total Execution time: $duration\n";
Total Execution time: 3 days, 3 hours, 23 minutes, 53 seconds