【发布时间】:2011-02-12 13:04:10
【问题描述】:
这是我在 Perl 脚本中尝试做的事情:
$data=""; 子 loadXMLConfig() { $filename="somexml.xml" $data = $xml->XMLin($filename); } 子 GetVariable() { ($FriendlyName) = @_; 开关($FriendlyName) { 案例“我的友好名称”{print $data->{my_xml_tag_name}} …… …… …… } }问题是我使用 Perl 只是因为我从 XML 文件中读取,但我需要通过 shell 脚本获取这些变量。所以,这就是我正在使用的:
$ perl -e 'require "scrpt.pl"; loadConfigFile(); GetVariable("My Variable")'
这完全符合预期,但每次获取变量时我都需要读取 XML 文件。有没有办法可以在 shell 调用中“保留”$data?我的想法是我只读取 XML 文件一次。如果没有,有没有更简单的方法可以做到这一点?这些是我无法改变的:
- 配置文件是一个 XML
- 需要 shell 脚本中的变量
【问题讨论】:
-
请注意 Switch.pm 已弃用。 :)