bhhensem has asked for the wisdom of the Perl Monks concerning the following question:
HI...
Actually I want to get latest file in remote machine via FTP.
I have tried to use mdtm to sort the filename based on timestamp and get the latest filename.
Unfortunately, the script display blank for the mdtm and i cannot get the latest filename. I do not know why this is happened.
Is there any solution i can used to sort the filename ?. The filename start from 1 to 9999 recursively.
My code as below
my @list = $ftp->ls(); if ($cur_seq == 9999) { $ck_current = 1; } else { $ck_current = $cur_seq+1; } foreach my $name (@list) { #($pattern = $pattern) =~ s/\.*//g; if ($name =~ /^$file_pattern$/) { ($ckseq = substr($name,6,6)) =~ s/^0+//g; $list_filename{$ckseq} = $name; my $mdtm = $ftp->mdtm($name); if ($mdtm > $lasttm) { $latestfile = $name; $lasttm = $mdtm; } } } (my $lastseq = substr($latestfile,6,6)) =~ s/^0+//g;
Thank you
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re: How to sort filename based on time via FTP
by Anonymous Monk on Dec 19, 2014 at 11:50 UTC | |
|
Re: How to sort filename based on time via FTP
by GotToBTru (Prior) on Dec 19, 2014 at 14:58 UTC |