如何解决Perl中的变量

时间:2013-08-15 21:57:03

标签: perl

我需要帮助解决以下变量${$mapusers[$index]->[1]}

见下文......打印查找。但是当我做一个系统($ query_user)时,变量是空的。

my $query_user = 'adquery user -w ${$mapusers[$index]->[1]}';

2 个答案:

答案 0 :(得分:3)

使用"代替'

my $query_user = "adquery user -w ${$mapusers[$index]->[1]}";
system($query_user);

或者,如果那个不起作用,试试这个:

my $query_user = "adquery user -w " . $mapusers[$index]->[1];
system($query_user);

如果$mapusers[$index]->[1]是标量引用,则应使用第一个,如果$mapusers[$index]->[1]不是引用,则应使用第二个。

如果要捕获命令的标准输出,请使用readpipe代替system,或使用反引号运算符。

答案 1 :(得分:0)

如果要运行adquery命令并将其输出存储在$query_user中,请使用backticks or qx

my $query_user = `adquery user -w ${$mapusers[$index]->[1]}`;