Windows NT KAMIDAKI 10.0 build 19045 (Windows 10) AMD64
Apache/2.4.58 (Win64) OpenSSL/3.1.3 PHP/8.3.9
Server IP : 192.168.3.16 & Your IP : 216.73.216.204
Domains :
Cant Read [ /etc/named.conf ]
User : SISTEMA
Terminal
Auto Root
Create File
Create Folder
Localroot Suggester
Backdoor Destroyer
Readme
C: /
xampp /
perl /
bin /
Delete
Unzip
Name
Size
Permission
Date
Action
SOAPsh.bat
3.35
KB
-rwxrwxrwx
2021-01-24 18:08
SOAPsh.pl
2.75
KB
-rw-rw-rw-
2021-01-24 18:01
bdf2gdfont.bat
5.26
KB
-rwxrwxrwx
2021-01-24 18:08
bdf2gdfont.pl
4.75
KB
-rw-rw-rw-
2021-01-24 17:46
chartex
5.67
KB
-rw-rw-rw-
2021-01-24 18:01
chartex.bat
6.47
KB
-rwxrwxrwx
2021-01-24 18:08
config_data
7.2
KB
-rw-rw-rw-
2021-01-24 18:01
config_data.bat
7.73
KB
-rwxrwxrwx
2024-07-26 17:42
corelist.bat
15.75
KB
-rwxrwxrwx
2023-11-19 11:41
cpan
8.06
KB
-rw-rw-rw-
2021-01-24 18:01
cpan-mirrors
4.18
KB
-rw-rw-rw-
2021-01-24 18:01
cpan-mirrors.bat
5.1
KB
-rwxrwxrwx
2021-01-24 18:08
cpan-outdated
8.85
KB
-rw-rw-rw-
2021-01-24 18:01
cpan-outdated.bat
9.67
KB
-rwxrwxrwx
2021-01-24 18:08
cpan.bat
9.16
KB
-rwxrwxrwx
2021-01-24 18:08
cpan2dist
21.22
KB
-rw-rw-rw-
2021-01-24 18:01
cpan2dist.bat
22.39
KB
-rwxrwxrwx
2021-01-24 18:08
cpandb
6.6
KB
-rw-rw-rw-
2021-01-24 18:01
cpandb.bat
7.37
KB
-rwxrwxrwx
2021-01-24 18:08
cpanel_json_xs
9.75
KB
-rw-rw-rw-
2021-01-24 18:01
cpanel_json_xs.bat
10.58
KB
-rwxrwxrwx
2021-01-24 18:08
cpanfile-dump
3.45
KB
-rw-rw-rw-
2021-01-24 16:20
cpanfile-dump.bat
4.08
KB
-rwxrwxrwx
2021-01-24 18:08
cpanm
295.67
KB
-rw-rw-rw-
2021-01-24 16:36
cpanm.bat
297.23
KB
-rwxrwxrwx
2021-01-24 18:08
cpanp
3.22
KB
-rw-rw-rw-
2021-01-24 18:01
cpanp-run-perl
459
B
-rw-rw-rw-
2021-01-24 16:38
cpanp-run-perl.bat
990
B
-rwxrwxrwx
2021-01-24 18:08
cpanp.bat
3.84
KB
-rwxrwxrwx
2021-01-24 18:08
crc32
1.01
KB
-rw-rw-rw-
2021-01-24 18:01
crc32.bat
1.57
KB
-rwxrwxrwx
2021-01-24 18:08
dbicadmin
7
KB
-rw-rw-rw-
2021-01-24 18:01
dbicadmin.bat
7.87
KB
-rwxrwxrwx
2021-01-24 18:08
dbilogstrip
1.39
KB
-rw-rw-rw-
2021-01-24 17:15
dbilogstrip.bat
1.89
KB
-rwxrwxrwx
2021-01-24 18:08
dbiprof
6.31
KB
-rw-rw-rw-
2021-01-24 17:15
dbiprof.bat
6.82
KB
-rwxrwxrwx
2021-01-24 18:08
dbiproxy
5.44
KB
-rw-rw-rw-
2021-01-24 17:15
dbiproxy.bat
5.95
KB
-rwxrwxrwx
2021-01-24 18:08
enc2xs
40.68
KB
-rw-rw-rw-
2021-01-24 18:01
enc2xs.bat
42.87
KB
-rwxrwxrwx
2021-01-24 18:08
encguess
2.91
KB
-rw-rw-rw-
2021-01-24 18:01
encguess.bat
3.8
KB
-rwxrwxrwx
2021-01-24 18:08
exe_update.bat
4.71
KB
-rwxrwxrwx
2021-01-24 18:08
exe_update.pl
4.05
KB
-rw-rw-rw-
2021-01-24 18:01
exetype.bat
3.53
KB
-rwxrwxrwx
2021-01-24 18:08
extract_vba
2.98
KB
-rw-rw-rw-
2021-01-24 18:01
extract_vba.bat
3.62
KB
-rwxrwxrwx
2021-01-24 18:08
factor.bat
3.77
KB
-rwxrwxrwx
2021-01-24 18:08
factor.pl
3.16
KB
-rw-rw-rw-
2021-01-24 18:01
findrule
3.24
KB
-rw-rw-rw-
2021-01-24 16:52
findrule.bat
3.88
KB
-rwxrwxrwx
2021-01-24 18:08
h2ph.bat
30.27
KB
-rwxrwxrwx
2024-07-26 17:42
h2xs.bat
62.43
KB
-rwxrwxrwx
2024-07-26 17:42
htmltree
1.28
KB
-rw-rw-rw-
2021-01-24 18:01
htmltree.bat
1.81
KB
-rwxrwxrwx
2024-07-26 17:42
hypnotoad
1.03
KB
-rw-rw-rw-
2021-01-24 16:59
hypnotoad.bat
1.58
KB
-rwxrwxrwx
2021-01-24 18:08
instmodsh
4.09
KB
-rw-rw-rw-
2021-01-24 18:01
instmodsh.bat
5.03
KB
-rwxrwxrwx
2021-01-24 18:08
json_pp
4.77
KB
-rw-rw-rw-
2021-01-24 18:01
json_pp.bat
5.52
KB
-rwxrwxrwx
2024-07-26 17:42
json_xs
6.84
KB
-rw-rw-rw-
2021-01-24 18:01
json_xs.bat
7.6
KB
-rwxrwxrwx
2021-01-24 18:08
kwalitee-metrics
2.34
KB
-rw-rw-rw-
2021-01-24 18:01
kwalitee-metrics.bat
2.96
KB
-rwxrwxrwx
2021-01-24 18:08
libgcc_s_seh-1.dll
74.5
KB
-rw-rw-rw-
2019-03-14 23:36
libnetcfg.bat
16.88
KB
-rwxrwxrwx
2024-07-26 17:42
libstdc++-6.dll
1.36
MB
-rw-rw-rw-
2019-03-14 23:36
libwinpthread-1.dll
51
KB
-rw-rw-rw-
2019-03-14 23:36
llw32helper.bat
4.8
KB
-rwxrwxrwx
2021-01-24 18:08
llw32helper.pl
4.13
KB
-rw-rw-rw-
2021-01-24 17:51
lwp-download
10.04
KB
-rw-rw-rw-
2021-01-24 18:01
lwp-download.bat
10.88
KB
-rwxrwxrwx
2021-01-24 18:08
lwp-dump
2.64
KB
-rw-rw-rw-
2021-01-24 18:01
lwp-dump.bat
3.26
KB
-rwxrwxrwx
2021-01-24 18:08
lwp-mirror
2.35
KB
-rw-rw-rw-
2021-01-24 18:01
lwp-mirror.bat
2.96
KB
-rwxrwxrwx
2021-01-24 18:08
lwp-request
15.81
KB
-rw-rw-rw-
2021-01-24 18:01
lwp-request.bat
16.88
KB
-rwxrwxrwx
2021-01-24 18:08
mech-dump
4.74
KB
-rw-rw-rw-
2021-01-24 18:01
mech-dump.bat
5.44
KB
-rwxrwxrwx
2021-01-24 18:08
minicpan
5.36
KB
-rw-rw-rw-
2021-01-24 18:08
minicpan.bat
6.05
KB
-rwxrwxrwx
2021-01-24 18:08
module-version
2.06
KB
-rw-rw-rw-
2021-01-24 17:51
module-version.bat
2.65
KB
-rwxrwxrwx
2021-01-24 18:08
mojo
408
B
-rw-rw-rw-
2021-01-24 16:59
mojo.bat
953
B
-rwxrwxrwx
2021-01-24 18:08
moose-outdated
427
B
-rw-rw-rw-
2021-01-24 18:01
moose-outdated.bat
977
B
-rwxrwxrwx
2021-01-24 18:08
morbo
2.15
KB
-rw-rw-rw-
2021-01-24 16:59
morbo.bat
2.72
KB
-rwxrwxrwx
2021-01-24 18:08
mymeta-cpanfile
2.7
KB
-rw-rw-rw-
2021-01-24 16:20
mymeta-cpanfile.bat
3.32
KB
-rwxrwxrwx
2021-01-24 18:08
nssm_32.exe
288
KB
-rwxrwxrwx
2021-01-24 16:50
nssm_64.exe
323.5
KB
-rwxrwxrwx
2021-01-24 16:50
package-stash-conflicts
463
B
-rw-rw-rw-
2021-01-24 18:01
package-stash-conflicts.bat
1013
B
-rwxrwxrwx
2021-01-24 18:08
parinstallppd
3.35
KB
-rw-rw-rw-
2021-01-24 18:01
parinstallppd.bat
3.99
KB
-rwxrwxrwx
2021-01-24 18:08
perl.exe
39
KB
-rwxrwxrwx
2021-01-24 16:06
perl5.32.1.exe
39
KB
-rwxrwxrwx
2021-01-24 16:06
perl532.dll
3.26
MB
-rw-rw-rw-
2021-01-24 16:07
perlbug.bat
46.8
KB
-rwxrwxrwx
2024-07-26 17:42
perldoc.bat
1016
B
-rwxrwxrwx
2023-11-19 11:41
perlglob.bat
1.95
KB
-rwxrwxrwx
2021-01-24 18:08
perlglob.exe
17
KB
-rwxrwxrwx
2021-01-24 16:01
perlivp.bat
11.72
KB
-rwxrwxrwx
2024-07-26 17:42
perlthanks.bat
46.8
KB
-rwxrwxrwx
2024-07-26 17:42
perltidy
175.27
KB
-rw-rw-rw-
2021-01-24 18:01
perltidy.bat
180.32
KB
-rwxrwxrwx
2021-01-24 18:08
pgplet
10.37
KB
-rw-rw-rw-
2021-01-24 18:01
pgplet.bat
11.22
KB
-rwxrwxrwx
2021-01-24 18:08
piconv
8.07
KB
-rw-rw-rw-
2021-01-24 18:01
piconv.bat
9.13
KB
-rwxrwxrwx
2021-01-24 18:08
pkg-config
46.94
KB
-rw-rw-rw-
2021-01-24 18:01
pkg-config.bat
49.2
KB
-rwxrwxrwx
2021-01-24 18:08
pl2bat.bat
11.49
KB
-rwxrwxrwx
2021-01-24 18:08
pl2bat.pl
10.4
KB
-rw-rw-rw-
2021-01-24 18:01
pl2pm.bat
5.56
KB
-rwxrwxrwx
2024-07-26 17:42
pler
540
B
-rw-rw-rw-
2021-01-24 18:01
pler.bat
1.07
KB
-rwxrwxrwx
2021-01-24 18:08
pm-uninstall
820
B
-rw-rw-rw-
2021-01-24 18:01
pm-uninstall.bat
1.28
KB
-rwxrwxrwx
2023-11-19 11:41
pod2html.bat
5.02
KB
-rwxrwxrwx
2024-07-26 17:42
pod2latex
10.39
KB
-rw-rw-rw-
2024-07-26 17:42
pod2latex.bat
10.92
KB
-rwxrwxrwx
2024-07-26 17:42
pod2man.bat
15.42
KB
-rwxrwxrwx
2023-11-19 11:41
pod2text.bat
11.29
KB
-rwxrwxrwx
2023-11-19 11:41
pod2usage
4.16
KB
-rw-rw-rw-
2021-01-24 16:27
pod2usage.bat
4.67
KB
-rwxrwxrwx
2021-01-24 18:08
pod_cover
1.37
KB
-rw-rw-rw-
2021-01-24 18:01
pod_cover.bat
1.94
KB
-rwxrwxrwx
2021-01-24 18:08
podchecker
3.7
KB
-rw-rw-rw-
2021-01-24 16:27
podchecker.bat
4.21
KB
-rwxrwxrwx
2021-01-24 18:08
podselect
2.56
KB
-rw-rw-rw-
2021-01-24 16:25
podselect.bat
3.07
KB
-rwxrwxrwx
2021-01-24 18:08
ppd2par
4.64
KB
-rw-rw-rw-
2021-01-24 18:01
ppd2par.bat
5.32
KB
-rwxrwxrwx
2021-01-24 18:08
ppm.bat
35.53
KB
-rwxrwxrwx
2021-01-24 18:08
ppm.pl
33.99
KB
-rw-rw-rw-
2021-01-24 18:01
primes.bat
21.45
KB
-rwxrwxrwx
2021-01-24 18:08
primes.pl
20.34
KB
-rw-rw-rw-
2021-01-24 18:01
prove.bat
14.07
KB
-rwxrwxrwx
2023-11-19 11:41
ptar
3.38
KB
-rw-rw-rw-
2021-01-24 18:01
ptar.bat
4.28
KB
-rwxrwxrwx
2021-01-24 18:08
ptardiff
2.48
KB
-rw-rw-rw-
2021-01-24 18:01
ptardiff.bat
3.35
KB
-rwxrwxrwx
2021-01-24 18:08
ptargrep
4.19
KB
-rw-rw-rw-
2021-01-24 18:01
ptargrep.bat
5.14
KB
-rwxrwxrwx
2021-01-24 18:08
runperl.bat
2.72
KB
-rwxrwxrwx
2021-01-24 18:08
scan-perl-prereqs-nqlite
5.28
KB
-rw-rw-rw-
2021-01-24 16:24
scan-perl-prereqs-nqlite.bat
6
KB
-rwxrwxrwx
2021-01-24 18:08
search.bat
55.83
KB
-rwxrwxrwx
2021-01-24 18:08
shasum.bat
10.48
KB
-rwxrwxrwx
2023-11-19 11:41
splain.bat
20.43
KB
-rwxrwxrwx
2024-07-26 17:42
streamzip
5.45
KB
-rw-rw-rw-
2021-01-24 18:01
streamzip.bat
6.17
KB
-rwxrwxrwx
2021-01-24 18:08
stubmaker.bat
4.01
KB
-rwxrwxrwx
2021-01-24 18:08
stubmaker.pl
3.35
KB
-rw-rw-rw-
2021-01-24 18:01
test-yaml
1017
B
-rw-rw-rw-
2021-01-24 18:01
test-yaml.bat
1.56
KB
-rwxrwxrwx
2021-01-24 18:08
tpage
8.85
KB
-rw-rw-rw-
2021-01-24 18:01
tpage.bat
9.64
KB
-rwxrwxrwx
2021-01-24 18:08
ttree
38.21
KB
-rw-rw-rw-
2021-01-24 18:01
ttree.bat
39.9
KB
-rwxrwxrwx
2021-01-24 18:08
use-devel-checklib
2.7
KB
-rw-rw-rw-
2021-01-24 16:53
use-devel-checklib.bat
3.31
KB
-rwxrwxrwx
2021-01-24 18:08
whirlpoolsum
4.93
KB
-rw-rw-rw-
2021-01-24 18:01
whirlpoolsum.bat
5.67
KB
-rwxrwxrwx
2021-01-24 18:08
wperl.exe
39
KB
-rwxrwxrwx
2021-01-24 16:06
xml_grep
13.32
KB
-rw-rw-rw-
2021-01-24 18:01
xml_grep.bat
14.3
KB
-rwxrwxrwx
2021-01-24 18:08
xml_merge
3.89
KB
-rw-rw-rw-
2021-01-24 18:01
xml_merge.bat
4.55
KB
-rwxrwxrwx
2021-01-24 18:08
xml_pp
7.82
KB
-rw-rw-rw-
2021-01-24 18:01
xml_pp.bat
8.61
KB
-rwxrwxrwx
2021-01-24 18:08
xml_spellcheck
6.34
KB
-rw-rw-rw-
2021-01-24 18:01
xml_spellcheck.bat
7.1
KB
-rwxrwxrwx
2021-01-24 18:08
xml_split
21.13
KB
-rw-rw-rw-
2021-01-24 18:01
xml_split.bat
22.27
KB
-rwxrwxrwx
2021-01-24 18:08
xsubpp.bat
5.78
KB
-rwxrwxrwx
2023-11-19 11:41
zipdetails
56.01
KB
-rw-rw-rw-
2021-01-24 18:01
zipdetails.bat
58.95
KB
-rwxrwxrwx
2021-01-24 18:08
Save
Rename
@rem = '--*-Perl-*-- @set "ErrorLevel=" @if "%OS%" == "Windows_NT" @goto WinNT @perl -x -S "%0" %1 %2 %3 %4 %5 %6 %7 %8 %9 @set ErrorLevel=%ErrorLevel% @goto endofperl :WinNT @perl -x -S %0 %* @set ErrorLevel=%ErrorLevel% @if NOT "%COMSPEC%" == "%SystemRoot%\system32\cmd.exe" @goto endofperl @if %ErrorLevel% == 9009 @echo You do not have Perl in your PATH. @goto endofperl @rem '; #!/usr/bin/perl #line 30 =head1 NAME lwp-download - Fetch large files from the web =head1 SYNOPSIS lwp-download [-a] [-s] <url> [<local path>] Options: -a save the file in ASCII mode -s use HTTP headers to guess output filename =head1 DESCRIPTION The B<lwp-download> program will save the file at I<url> to a local file. If I<local path> is not specified, then the current directory is assumed. If I<local path> is a directory, then the last segment of the path of the I<url> is appended to form a local filename. If the I<url> path ends with slash the name "index" is used. With the B<-s> option pick up the last segment of the filename from server provided sources like the Content-Disposition header or any redirect URLs. A file extension to match the server reported Content-Type might also be appended. If a file with the produced filename already exists, then B<lwp-download> will prompt before it overwrites and will fail if its standard input is not a terminal. This form of invocation will also fail is no acceptable filename can be derived from the sources mentioned above. If I<local path> is not a directory, then it is simply used as the path to save into. If the file already exists it's overwritten. The I<lwp-download> program is implemented using the I<libwww-perl> library. It is better suited to down load big files than the I<lwp-request> program because it does not store the file in memory. Another benefit is that it will keep you updated about its progress and that you don't have much options to worry about. Use the C<-a> option to save the file in text (ASCII) mode. Might make a difference on DOSish systems. =head1 EXAMPLE Fetch the newest and greatest perl version: $ lwp-download http://www.perl.com/CPAN/src/latest.tar.gz Saving to 'latest.tar.gz'... 11.4 MB received in 8 seconds (1.43 MB/sec) =head1 AUTHOR Gisle Aas <gisle@aas.no> =cut #' get emacs out of quote mode use strict; use warnings; use LWP::UserAgent (); use LWP::MediaTypes qw(guess_media_type media_suffix); use URI (); use HTTP::Date (); use Encode; use Encode::Locale; use Getopt::Long qw(HelpMessage :config gnu_getopt no_ignore_case auto_help); my $progname = $0; $progname =~ s,.*/,,; # only basename left in progname $progname =~ s,.*\\,, if $^O eq "MSWin32"; $progname =~ s/\.\w*$//; # strip extension if any my %opt; GetOptions( 'a' => \$opt{a}, 's' => \$opt{s} ) or HelpMessage(); my $url = URI->new(decode(locale => shift) || HelpMessage()); my $argfile = encode(locale_fs => decode(locale => shift)); HelpMessage() if defined($argfile) && !length($argfile); my $ua = LWP::UserAgent->new( agent => "lwp-download/$LWP::UserAgent::VERSION ", keep_alive => 1, env_proxy => 1, ); my $file; # name of file we download into my $length; # total number of bytes to download my $flength; # formatted length my $size = 0; # number of bytes received my $start_t; # start time of download my $last_dur; # time of last callback my $shown = 0; # have we called the show() function yet $SIG{INT} = sub { die "Interrupted\n"; }; $| = 1; # autoflush my $res = $ua->request( HTTP::Request->new(GET => $url), sub { unless (defined $file) { my $res = $_[1]; my $directory; if (defined $argfile && -d $argfile) { ($directory, $argfile) = ($argfile, undef); } unless (defined $argfile) { # find a suitable name to use $file = $opt{s} && $res->filename; # if this fails we try to make something from the URL unless ($file) { $file = ($url->path_segments)[-1]; if (!defined($file) || !length($file)) { $file = "index"; my $suffix = media_suffix($res->content_type); $file .= ".$suffix" if $suffix; } elsif ($url->scheme eq 'ftp' || $file =~ /\.t[bg]z$/ || $file =~ /\.tar(\.(Z|gz|bz2?))?$/) { # leave the filename as it was } else { my $ct = guess_media_type($file); unless ($ct eq $res->content_type) { # need a better suffix for this type my $suffix = media_suffix($res->content_type); $file .= ".$suffix" if $suffix; } } } # validate that we don't have a harmful filename now. The server # might try to trick us into doing something bad. if (!length($file) || $file =~ s/([^a-zA-Z0-9_\.\-\+\~])/sprintf "\\x%02x", ord($1)/ge || $file =~ /^\./) { die "Will not save <$url> as \"$file\".\nPlease override file name on the command line.\n"; } if (defined $directory) { require File::Spec; $file = File::Spec->catfile($directory, $file); } # Check if the file is already present if (-l $file) { die "Will not save <$url> to link \"$file\".\nPlease override file name on the command line.\n"; } elsif (-f _) { die "Will not save <$url> as \"$file\" without verification.\nEither run from terminal or override file name on the command line.\n" unless -t; $shown = 1; print "Overwrite $file? [y] "; my $ans = <STDIN>; unless (defined($ans) && $ans =~ /^y?\n/) { if (defined $ans) { print "Ok, aborting.\n"; } else { print "\nAborting.\n"; } exit 1; } $shown = 0; } elsif (-e _) { die "Will not save <$url> as \"$file\". Path exists.\n"; } else { print "Saving to '$file'...\n"; use Fcntl qw(O_WRONLY O_EXCL O_CREAT); sysopen(FILE, $file, O_WRONLY | O_EXCL | O_CREAT) || die "Can't open $file: $!"; } } else { $file = $argfile; } unless (fileno(FILE)) { open(FILE, ">", $file) || die "Can't open $file: $!\n"; } binmode FILE unless $opt{a}; $length = $res->content_length; $flength = fbytes($length) if defined $length; $start_t = time; $last_dur = 0; } print FILE $_[0] or die "Can't write to $file: $!\n"; $size += length($_[0]); if (defined $length) { my $dur = time - $start_t; if ($dur != $last_dur) { # don't update too often $last_dur = $dur; my $perc = $size / $length; my $speed; $speed = fbytes($size / $dur) . "/sec" if $dur > 3; my $secs_left = fduration($dur / $perc - $dur); $perc = int($perc * 100); my $show = "$perc% of $flength"; $show .= " (at $speed, $secs_left remaining)" if $speed; show($show, 1); } } else { show(fbytes($size) . " received"); } } ); if (fileno(FILE)) { close(FILE) || die "Can't write to $file: $!\n"; show(""); # clear text print "\r"; print fbytes($size); print " of ", fbytes($length) if defined($length) && $length != $size; print " received"; my $dur = time - $start_t; if ($dur) { my $speed = fbytes($size / $dur) . "/sec"; print " in ", fduration($dur), " ($speed)"; } print "\n"; if (my $mtime = $res->last_modified) { utime time, $mtime, $file; } if ($res->header("X-Died") || !$res->is_success) { if (my $died = $res->header("X-Died")) { print "$died\n"; } if (-t) { print "Transfer aborted. Delete $file? [n] "; my $ans = <STDIN>; if (defined($ans) && $ans =~ /^y\n/) { unlink($file) && print "Deleted.\n"; } elsif ($length > $size) { print "Truncated file kept: ", fbytes($length - $size), " missing\n"; } else { print "File kept.\n"; } exit 1; } else { print "Transfer aborted, $file kept\n"; } } exit 0; } # Did not manage to create any file print "\n" if $shown; if (my $xdied = $res->header("X-Died")) { print "$progname: Aborted\n$xdied\n"; } else { print "$progname: ", $res->status_line, "\n"; } exit 1; sub fbytes { my $n = int(shift); if ($n >= 1024 * 1024) { return sprintf "%.3g MB", $n / (1024.0 * 1024); } elsif ($n >= 1024) { return sprintf "%.3g KB", $n / 1024.0; } else { return "$n bytes"; } } sub fduration { use integer; my $secs = int(shift); my $hours = $secs / (60 * 60); $secs -= $hours * 60 * 60; my $mins = $secs / 60; $secs %= 60; if ($hours) { return "$hours hours $mins minutes"; } elsif ($mins >= 2) { return "$mins minutes"; } else { $secs += $mins * 60; return "$secs seconds"; } } BEGIN { my @ani = qw(- \ | /); my $ani = 0; sub show { my ($mess, $show_ani) = @_; print "\r$mess" . (" " x (75 - length $mess)); my $msg = $show_ani ? $ani[$ani++]. "\b" : ' '; print $msg; $ani %= @ani; $shown++; } } __END__ :endofperl @set "ErrorLevel=" & @goto _undefined_label_ 2>NUL || @"%COMSPEC%" /d/c @exit %ErrorLevel%