द्वारा डाउनलोड की गई फ़ाइल को सहेजने के लिए एक निष्पादन योग्य फ़ाइल प्रकार डाउनलोड करने के लिए एलएमपी का उपयोग करके और स्मृति में प्रतिक्रिया के साथ, मैं फ़ाइल को हैश करने में सक्षम हूं। हालांकि मैं इस फाइल को अपने सिस्टम पर कैसे सहेज सकता हूं? मुझे लगता है कि मैं नीचे क्या कोशिश कर रहा हूं के साथ गलत ट्रैक पर हूं। डाउनलोड सफल है क्योंकि मैं हैश सही ढंग से उत्पन्न करने में सक्षम हूं (मैंने वास्तविक फ़ाइल को डाउनलोड करके और हैश की तुलना करके इसे दो बार जांच लिया है)।perl lwp
use strict;
use warnings;
use LWP::Useragent;
use Digest::MD5 qw(md5_hex);
use Digest::MD5::File qw(file_md5_hex);
use File::Fetch;
my $url = 'http://www.karenware.com/progs/pthasher-setup.exe';
my $filename = $url;
$filename =~ m/.*\/(.*)$/;
$filename = $1;
my $dir ='/download/two';
print "$filename\n";
my $ua = LWP::UserAgent->new();
my $response = $ua->get($url);
die $response->status_line if !$response->is_success;
my $file = $response->decoded_content(charset => 'none');
my $md5_hex = md5_hex($file);
print "$md5_hex\n";
my $save = "Downloaded/$filename";
unless(open SAVE, '>>'.$save) {
die "\nCannot create save file '$save'\n";
}
print SAVE $file;
close SAVE;
आप मैं क्यों बजाय सब कुछ डाउनलोड नहीं करते हैं तो प्रत्येक फ़ाइल और हैश के लिए फ़ोल्डर पार्स सोच रहे हैं, तो इसकी वजह से im एक पाश में इन सभी फ़ाइलों को डाउनलोड। और प्रत्येक लूप के दौरान, मैं एक ही समय में फ़ाइल नाम और हैश डेटाबेस में प्रासंगिक स्रोत यूआरएल (जहां यह फ़ाइल मिली थी) अपलोड करें।
धन्यवाद बहुत कुछ, हालांकि getstore() का नकारात्मक पक्ष यह है कि फ़ोल्डर पहले से मौजूद होना चाहिए। मैं एक पल के लिए चौंक गया जब कोई फ़ाइल/फ़ोल्डर दिखाई नहीं दिया। –