0

我正在运行一个 perl 脚本来扫描多个主机。当我放入一台主机时

$scanner->scan('-sS -p 1-1024 -sV -O --max-rtt-timeout 200ms 111.111.111.111');

它运行良好,但是当我尝试通过解析带有主机列表的文件来添加变量值时

$scanner->scan('-sS -p 1-1024 -sV -O --max-rtt-timeout 200ms $host');

该程序只是假设 $host 作为字符,有没有办法解决这个问题?我使用 nmap::scanner 作为我的模块。

谢谢

4

2 回答 2

2

尝试用双引号替换引号:

$scanner->scan("-sS -p 1-1024 -sV -O --max-rtt-timeout 200ms $host");

或放置$host 在室外:

$scanner->scan('-sS -p 1-1024 -sV -O --max-rtt-timeout 200ms '.$host);
于 2013-11-01T15:17:10.257 回答
1

您使用了错误的引号类型

'

不插入变量所以

$x='fish';

$b='deep fried $x';

将 $b 设置为deep fried $x

然而

$b="油炸$x";

将 $b 设置为deep fried fish

有关详细信息,请参阅 perldoc perlop

于 2013-11-01T15:19:34.830 回答