local

localは、パッケージ変数の値を一時的に退避し、別の値を入れておいて、パッケージスコープを抜けたら、元に戻すことが出来る。

local - パッケージ変数を一時的に退避して復元 - Perlプログラミング入門ゼミ - Perlでテキスト処理・Linuxサーバー管理・Webシステム開発

そもそも、これは変数宣言に使うものではないので注意。

$our_var2に2を入れて、PackageAの中では、localを指定しつつ20を入れる。

[bg1@dti-vps-srv93 local]$ vi local.pl
[bg1@dti-vps-srv93 local]$ perl local.pl
$our_var1 = 1
$our_var2 = 2
$our_var1 = 10
$our_var2 = 20
$our_var1 = 10
$our_var2 = 2
[bg1@dti-vps-srv93 local]$

PackageAを抜けた時、$our_var1は10を入れたままになってるのに対し、$our_var2は2に戻っている。
退避したからね。

Sample/perl/local/local/src/local at master · bg1bgst333/Sample · GitHub