用户连接时运行命令?

发布于 2024-12-08 14:10:38 字数 83 浏览 0 评论 0原文

当用户尝试连接到该端口时,是否可以侦听端口并运行命令?理想的应用程序是服务器只应在有人实际使用时运行。 Windows 或 Linux 解决方案均有效。

Is it possible to listen on a port and run a command when a user attempts to connect to that port? Ideal application is for a server that should only be run when someone is actually using it. Windows or Linux solutions work.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

戏舞 2024-12-15 14:10:38

linux/unix:

man nc

NAME
       nc - TCP/IP swiss army knife

你可能感兴趣的一些选项

 -l           listen mode, for inbound connects
-p port      local port number (port numbers can be individual or ranges: lo-hi [inclusive])
 -e prog      specify program to exec after connect (use with caution)

我认为 nc 在 windows 平台下也可用。

linux/unix:

man nc

NAME
       nc - TCP/IP swiss army knife

some options that you may be interested

 -l           listen mode, for inbound connects
-p port      local port number (port numbers can be individual or ranges: lo-hi [inclusive])
 -e prog      specify program to exec after connect (use with caution)

i think nc is also available under windows platform.

吻泪 2024-12-15 14:10:38

一种解决方案是通过 inetd 或 xinetd,指定端口号和要运行的程序(可能是 shell 脚本)。

One solution could be via inetd or xinetd, specify the port number and a program to run, for you probably a shell script.

猛虎独行 2024-12-15 14:10:38

我注意到问题的确切范围是什么,但如果绑定到编程级别,您可以以这样的方式编写服务器:当没有人使用它时,除了侦听部分之外,不会分配任何资源。我将其称为延迟初始化。当有人连接时,只需初始化程序的整个逻辑即可。当所有连接都消失后,取消初始化所有内容。

I am note sure what is the exact scope of a question but if bound to the programming-level, you could write your server in a way that when nobody is using it, no resources apart from the listening part are allocated. I would call it lazy initialization. When someone connects simply initialize the whole logic of your program. When all connections are gone, deinitialize everything.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文