我正在编写一个现在变得非常大的perl脚本。
我只想打印所有变量名称及其对应的值为例如我的脚本
$filename = "vivek.html";
$name = "$0";
$lang = "perl";
($dynamic_var) = $filecontent =~ /([\w\=\-\ ]+)(?=<)/;
并且还在运行时初始化了一些变量 需要输出:
$filename==>vivek.html
$name==>script.pl
$lang==>perl
$dynamic_var==>dynamic value
答案 0 :(得分:2)
这远非好的做法(你应该使用自己的哈希),但是你可以查看存储了所有包(全局)变量的%main::
哈希值,因为它似乎只是在使用它们,< / p>
my %vars;
BEGIN {
@vars{keys %main::} = ();
}
# begin of your script
$filename = "vivek.html";
$name = "$0";
$lang = "perl";
# end of your script
print "\$$_==>$$_\n"
for sort grep { !exists $vars{$_} } keys %main::;