Shell-ka carruurta ma dhoofin karo proxy dib ugu noqo Perl
Si toos ah u dhig ENV-ga Perl oo ku xaddid doorsoomayaasha proxy-ga local agagaarka hal wicitaan carruur ah si qiyamka asalka ah dib ugu soo noqdaan.
Amarka backtick ee ay ku jirto export waxa uu beddelaa kaliya shell-ka loo abuuray amarkaas. Marka shell-ku baxo, habka Perl ee waalidka ayaa wali haysta deegaankiisii hore.
Halkii, dhig hash-ka deegaanka Perl. local waxa uu beddelka ku hayn karaa hal block gudihiisa:
{
local $ENV{http_proxy} = 'http://proxy.example:8080';
local $ENV{https_proxy} = 'http://proxy.example:8080';
my $status = system {
'/usr/bin/curl'
} '/usr/bin/curl', '--fail', '--max-time', '30',
'https://downloads.example/data.csv';
die "Downloader failed: $status" if $status != 0;
}
Ilmuhu waxa uu dhaxlaa qiyamka la local-eeyay. Soo dejinta HTTP ee dadweynaha, barta dhammaadka ee liiska proxy-ga HTTP ayaa bixin kara qiyamkaas URL. Marka block-ku dhammaado, Perl waxa uu soo celiyaa gelitaannadii hore, oo ay ku jirto maqnaanshahoodii hore. Natiijada system ee la muujiyay waa xaaladda habka Perl, ma aha koodhka jawaabta HTTP ee la dejiyay.
local waxa uu leeyahay baaxad firfircoon: koodhka kale ee Perl ee lagu yeedho block-kaas gudihiisa ayaa sidoo kale arka deegaanka ku meel gaadhka ah. Ma aha kayd sir ah oo shaqo kastaba leh.
Dib u eeg doorsoomayaasha dhaxalka ah ee xarfaha waaweyn iyo kuwa dhaafka ah ee macmiilka la doortay. Soo-dejiyaha ayaa go'aamiya gelitaannada uu isticmaalo. Dejinta proxy-ga sidoo kale ma beddesho aqoonsiga isticmaalaha habka mana u baahna shell root gooni ah si loo dhaxlo oo keliya.