如何使用命令行参数在perl中启动进程?

Dop*_*eBP 1 perl command-line

有没有办法根据符号启动nmap扫描?我希望能够
在终端执行我的代码时运行nmap扫描,如下所示:script.pl -b xx.xxx.xxx.我尝试使用if语句执行此操作,但它正在运行.有谁知道hpw能做到这一点吗?

if("-b")
{
('nmap -v -r ARGS[0] >>file.txt')
}
Run Code Online (Sandbox Code Playgroud)

Cor*_*son 5

使用perl的Getopt :: Long模块可以轻松进行命令行选项解析.这是一个例子:

use Getopt::Long;

my ($b);

my $result = GetOptions ("b=s" => \$b);

if ($b) {
    system ('nmap -v -r ' . $b . ' >>file.txt');
}
Run Code Online (Sandbox Code Playgroud)

B =小号里面GetOptions会从一个字符串参数-b,并将其设置为$ B变量.