export අඩංගු backtick විධානයක් එම විධානය සඳහා සාදන ලද ෂෙල් එක පමණක් වෙනස් කරයි. ෂෙල් එක ඉවත් වූ විට මාතෘ Perl ක්‍රියාවලියට තවමත් එහි පෙර පරිසරය ඇත.

ඒ වෙනුවට Perl හි පරිසර hash එක සකසන්න. local මගින් වෙනස එක් කොටසක් තුළ තබා ගත හැක:

{
    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;
}

දරු ක්‍රියාවලිය local කළ අගයන් උරුම වශයෙන් ලබා ගනී. පොදු HTTP බාගැනීමක් සඳහා HTTP ප්‍රොක්සි ලැයිස්තුවේ අන්ත ලක්ෂ්‍යයකට එම URL අගයන් සැපයිය හැක. කොටස අවසන් වූ විට Perl පෙර ඇතුළත් කිරීම්, ඒවා මීට පෙර නොතිබූ බවද ඇතුළුව, නැවත ස්ථාපනය කරයි. දර්ශනය වන system ප්‍රතිඵලය Perl හි ක්‍රියාවලි තත්ත්වය මිස විකේතනය කළ HTTP ප්‍රතිචාර කේතය නොවේ.

local ට ගතික විෂය පථයක් ඇත: එම කොටස තුළ කැඳවන අනෙක් Perl කේතයටද තාවකාලික පරිසරය දිස්වේ. මෙය එක් එක් ශ්‍රිතය සඳහා පෞද්ගලික අක්තපත්‍ර ගබඩාවක් නොවේ.

තෝරාගත් සේවාදායකය සඳහා උරුම වන ලොකු අකුරු සහ මඟහැරීමේ විචල්‍ය සමාලෝචනය කරන්න. කුමන ආදාන භාවිත කරන්නේද යන්න බාගැනීම් මෙවලම තීරණය කරයි. ප්‍රොක්සි සැකසුම ක්‍රියාවලියේ පරිශීලක අනන්‍යතාවයද වෙනස් නොකරන අතර උරුම වීම සඳහා පමණක් වෙනම root ෂෙල් එකක්ද අවශ්‍ය නොවේ.

අදාළ ලිපි