在手册页中nc -l
,它说:
It is an error to use this option in conjunction with the -p, -s, or -z options.
但我在网上看到的大多数使用此命令的示例都使用nc -lp [port]
.
你可以-p
用-l
innc
吗?只是nc -l [port]
, 是它的正确用法,因为当我在另一个终端上用 连接到它时nc [ip address] [port]
,它可以工作。此外,当我使用nc -lp [port]
并连接到它时nc [ip address] [port]
,它也可以工作。这两个命令有区别吗?
请注意,有两个 netcat 包。
nc
它们提供的命令的选项也不相同:netcat-traditional将此命令显示为主要示例之一:
而netcat-openbsd状态:
所以是的,两个命令的作用相同,但您可能会遇到不适用于您的 netcat 版本的示例。例如
-e
.当您使用监听模式
-l
时,您必须指定端口。例如:所以实际上你不需要额外的选项
-p
来指示nc
命令在哪个端口监听。使用-lp
选项的示例可能基于旧版本,nc
或者作者没有像您一样阅读手册:) 也可能在使用-lp
组合时-p
省略选项。此外,这里是如何创建一个监听服务,基于
nc
:如何从命令行监听新端口 Ubuntu Server?