perl progress bar dialog


Login or Register for Dates, Times and to Reply

 
Thread Tools Search this Thread
# 1  
perl progress bar dialog

Hello,


In perl how to show the percentage download when we download something wget ...


For example when we wget some software instead of showing the following ......
============================================
[root@server]# wget http://www.mirrors.wiretapped.net/se...f-2.7.0.tar.gz
--06:31:29-- http://www.mirrors.wiretapped.net/se...f-2.7.0.tar.gz
=> `iptraf-2.7.0.tar.gz'
Resolving Wiretapped - Computer Security Software etc.... 203.220.0.26
Connecting to www.mirrors.wiretapped.net|203.220.0.26|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 363,496 (355K) [application/gzip]

100%[==================================================================================================>] 363,496 136.09K/s

06:31:33 (135.83 KB/s) - `iptraf-2.7.0.tar.gz' saved [363496/363496]

============================================

It will show on right hand side ...

1% of 100% complete

and

on left hand side it will show ...

[360/363496] bytes of download complete




Any other suggestions on "perl progress bar dialog" is welcome


Thanks
# 2  
This is an example. You need to install Term::ReadKey module from CPAN before you can run it.

Code:
#!/usr/bin/perl -w

$| = 1;

my $steps = 50;
my $columns = &getTerminalSize()->[1];

for (my $i=1; $i<=$steps; $i++) {
    my $percent = ($i/$steps*100);
    my $pbwidth = $columns-10;
    my $numhashes = ($i/$steps*$pbwidth);
    printf("\r% -${pbwidth}s% 10s", '#' x $numhashes, "[ " . $percent . "% ]");
    sleep 1;
}

sub getTerminalSize {
    use Term::ReadKey;
    my ($w, $h) = GetTerminalSize(STDOUT);
    if (!defined $w || !defined $h) {
        die "Cannot determine terminal size!";
    }
    return [$h, $w];
}

Output looks like this:
Code:
#########                                                                [ 14% ]

# 3  
Fine.. how do I integrate that with wget? And how can the script calculate the percentage value from the results of the wget .. instead of a fixed value defined in the script.


Thanks
# 4  
Why do you have to integrate with wget? Why not just try LWP in perl instead, or WWW::Curl? I cannot think of any good way to do it unless you have access to a WWW library such as curl or LWP, that you can implement whatever status reporting with it.
# 5  
Hello,

Thank you for your tips... I am zero where it comes to programming.. but I do have the logic/ideas only. I am starting to learn programming.


Can you give me a script which shows... downloading for example:-

http://www.mirrors.wiretapped.net/se...f-2.7.0.tar.gz

and showing the progress bar

which uses LWP in perl instead, or WWW::Curl


Thanks.
Login or Register for Dates, Times and to Reply

Previous Thread | Next Thread
Thread Tools Search this Thread
Search this Thread:
Advanced Search

Test Your Knowledge in Computers #546
Difficulty: Medium
In computer science, an operator takes the values of its operands and combines them in some way to produce a new value.
True or False?

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Progress bar

Hi Experts; Im in the process of writing a shell script for enabling an IT operations to run archiving.We use netbackup. The script is complete, though there is one bit that i need help on. Im trying to have a progess bar for the procedure.I have gone through the man page of the command in... (5 Replies)
Discussion started by: maverick_here
5 Replies

2. Shell Programming and Scripting

Perl Progress BAR

Looking for a solution to why my progress bar not working My code print "STARTED:\n "; my $pdf = CAM::PDF->new('XYZ.pdf') or die $CAM::PDF::errstr; print STDOUT "Processing File: "; open (FILE, ">bill_data.txt") || die "Unable to save Bill_data.txt file"; for my $pagenum (1 ..... (4 Replies)
Discussion started by: chakrapani
4 Replies

3. Shell Programming and Scripting

Progress bar for cp

I'm trying to use this code to get a progress bar for cp: "Can you get cp to give a progress bar like wget?" But I'm getting these errors: stat: illegal option -- c usage: stat awk: division by zero input record number 1, file source line number 4 I'm using Mac OS X 10.6... (1 Reply)
Discussion started by: pcwiz
1 Replies

4. Programming

A progress bar in C

Hello, it's me again...:eek: I need to create a progress bar in C, but i have no idea on how to do it. i want it to output something like this: Progress: 58% But i can't get it to work. Could you please post an example progress bar written in ANSI C? Thanks (4 Replies)
Discussion started by: Zykl0n-B
4 Replies

5. Shell Programming and Scripting

Progress Bar in Perl for UNIX

Hi Programmers, I just wrote a small script to print the percent complete. This maybe useful for someone! #!/usr/local/bin/perl # Total from which percentage will be calculated $cnt = 16; $|=1; for($i=0;$i<$cnt;$i++) { # Calculate Percentage $percent = ($i/$cnt)*100; (13 Replies)
Discussion started by: hifake
13 Replies

6. Shell Programming and Scripting

progress bar

hi all, in shell script (ksh), how do i write a progress bar ?? i have a script which searches files and while its searching i am currently printing out "." and if it finds what its searching for the script prints out the name of the file e.g .................. firstFile.txt... (2 Replies)
Discussion started by: cesarNZ
2 Replies

7. Shell Programming and Scripting

Progress bar

Hi friends, how can I show a progress bar for any running process in the shell script. For example when I am copying or compressing a file. Thanks. (1 Reply)
Discussion started by: dwiravi
1 Replies

8. UNIX for Advanced & Expert Users

how to have a cp progress bar?

Hi all, This is a reformed post to my earlier ones!!!!!! I would like to know how to include a progress bar while using the cp... I am copying a few huge files from cdrom but am unable to figure out ,how to give a progress bar!!!!! I checked out other sites as well,but the issue here is... (1 Reply)
Discussion started by: wrapster
1 Replies

9. UNIX for Advanced & Expert Users

progress bar

Hi all, I want to print # like that in a progress bar.. For e.g We can notice that during installation ... but,how to do that? Thnx, sakthi. (4 Replies)
Discussion started by: sakthi.abdullah
4 Replies

10. Shell Programming and Scripting

progress bar

i am trying to write a script where in it will connect to remote servers and execute remote scripts to fetch some data and ftp it back to a main server. i would like to add a script where it will show some sort of status bar until such time that the expected files have been recieved. something... (3 Replies)
Discussion started by: inquirer
3 Replies

Featured Tech Videos