我有一个perl脚本,它适用于perl版本5.8.8,但5.14有错误:匿名哈希中的元素奇数
这是我的代码:
$session->begin_privileged({ $_enable_password })
以前是这样的:
$session->begin_privileged( $_enable_password )
此时我收到此错误:
Single parameters to new() must be a HASH ref data
我有类似的类型行,如上所述,每个都有相同的单参数错误。
我用谷歌搜索但无法找到常规解决方案。
答案 0 :(得分:6)
如果$session
是Net::Appliance::Session
的实例,那么您的通话应如下所示:
$session->begin_privileged({ password => $_enable_password });
但我仍然不确定$_enable_password
首先不是哈希引用,在这种情况下,你应该将它作为单个参数传递而不用括号括起来。更有可能的解释是,$_enable_password
没有正确设置,而Perl v14已经停止了它的工作。