使用netstat -aon | findstr /I "1234"
,我可以监视该端口是否打开,但有一个问题:结果如下:
UDP 0.0.0.0:1234 *:* 5064
UDP 0.0.0.0:1234 *:* 5064
UDP 0.0.0.0:1234 *:* 5064
UDP 0.0.0.0:1234 *:* 5064
因此,每当我的程序(进度 ID 5064)无法打开该端口时,我都不知道这种情况何时实际发生。
所以,我想要这样的东西:
while true:
netstat -aon | findstr /I "1234"
time /T
end
(我已经检查过netstat /?
,但没有找到任何显示时间戳的开关。)
有人有想法吗?
(我正在使用 Windows Server 2019。)
好吧,在 PowerShell 中,您实际上可以使用循环执行示例中的操作
while
:...话虽如此,我认为这是完全错误的做法。套接字侦听失败是可检测到的 - 相应的函数将返回错误 - 因此,如果您的程序无法侦听服务器上配置的端口,它应该生成自己的日志消息,表明它有问题。
这些日志消息将包括输出消息的时间和日期。(如果您可以将消息发送到 Windows 事件日志 - 或系统日志收集器 - 它通常会自动包含时间/日期。)