2011-11-07 49 views
1

我試圖在perl中創建一個簡單的基於文本的進度條,以便在發送電子郵件或執行任務時顯示進度。perl的ProgressBar

任何指針?! 謝謝

回答

1

我使用了Term :: ProgressBar模塊,並且在每次完成操作後,我調用update()方法。就這樣。 謝謝大家,特別是Bill Ruppert;)

4

Damian Conway的Smart::Comments模塊包含文本進度條。

+1

Smart :: Comments可以在運行時啓用或禁用:[module](http://search.cpan.org/~chorny/Smart-Comments-1.0.4 /lib/Smart/Comments.pm#CONFIGURATION_AND_ENVIRONMENT) – JRFerguson

3

我很喜歡Time::Progress終端的東西。簡單的例子 -

use warnings; 
use strict; 
use Time::Progress; 
use Time::HiRes "usleep"; # for demo. 

my $timer = Time::Progress->new(); 
my $some_total_to_reach = 10_000; 
$timer->attr(min => 1, max => $some_total_to_reach); 

my $count = 1; 
while ($some_total_to_reach--) 
{ 
    print $timer->report("Doing stuff: %40b%p%L%E\r", $count++); 
    usleep int(rand(1_000)); 
} 

print "\nDone!\n"; 
+0

問題是我需要提供進度條,而我正在發送郵件。當我完成發送進度條時,也必須完成! – amrfaissal

+1

你是如何發送郵件的?你使用Net :: SMTP與數據庫?你一次發一條線嗎?你知道你要發送多少行嗎? –

+0

是的。我正在嘗試發送模板。任何指針?! – amrfaissal