服务器端查询端口是否被占用,在服务器端指定的端口的时候,怎么看该端口是否可用,是否已经被占用...

推荐答案

a286fd99257422d3ba43d45b7517b4fc.png

三百六十度跳投

2014.05.07

a286fd99257422d3ba43d45b7517b4fc.png

采纳率:66%    等级:18

已帮助:2533人

很多软件都占有端口的,比如迅雷是80,qq是8080,如果相同端口的软件先启动了,那后启动的服务器就不工作了

所有要先检测端口是否被其他的软件占用,在启动服务器,如果占用要给个提示,

以前搞过netbox的服务器(www.netbox.cn),可以实现这个

im httpd

Shell.Service.icon = "\status\on.gif"

Shell.Service.RunService "Webserver", "Webserver", "Webserver off"

'---------------------- 服务事件开始 ---------------------

Sub OnServiceStart()

Shell.Service.SetTimer 100

Set httpd = CreateObject("netbox.HttpServer")

If httpd.Create("", 80) = 0 Then

Set host = httpd.AddHost("", "\wwwroot")

host.EnableWrite=false

host.EnableScript = true

host.AddDefault "default.asp"

host.AddDefault "default.htm"

host.AddDefault "default.html"

host.AddDefault "index.asp"

host.AddDefault "index.htm"

host.AddDefault "index.html"

httpd.Start

else

Shell.MsgBox "服务器启动失败,80端口被占用!可能您的系统iis或迅雷在运行,终止后重试!","错误对话框"

Shell.Quit 0

end if

End Sub

Sub OnServiceStop()

httpd.Close

End Sub

Sub OnServicePause()

Shell.Service.Icon = "\status\off.gif"

Shell.MsgBox "服务器暂停运行!","暂停运行"

End Sub

Sub OnServiceResume()

OnServiceTimer

httpd.Start

End Sub

00分享举报

此回答由管理员  lxd0128   推荐为最佳回答。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
查看端口占用情况在 Ubuntu 系统中是一个常见的任务,特别是在网络管理、系统维护或调试应用服务时。这里提供一种常用的命令行工具方法来进行检查。 ### 使用 `netstat` 命令 #### 基本语法: ``` netstat -tuln ``` 这条命令会列出所有当前打开的 TCP 和 UDP 连接以及相关的进程信息。 **解释参数:** - `-t`: 表示显示 TCP 协议连接。 - `-u`: 表示显示 UDP 协议连接。 - `-l`: 表示只显示正在监听的连接。 - `-n`: 表示显示 IP 地址而非主机名,并直接展示 IP 数字值。 **详细输出示例:** ```shell Active Internet connections (only servers) Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name tcp 0 0 0.0.0.0:48749 0.0.0.0:* LISTEN 6599/freeradiusd tcp 0 0 0.0.0.0:6000 0.0.0.0:* LISTEN 6638/mysqld udp 0 0 0.0.0.0:68 0.0.0.0:* 552/freeradiusd udp 0 0 ::1:53 :::* 579/bind ``` 在这个例子中,我们可以看到有多个端口正在监听。每个条目都包含一些信息,如协议类型 (`tcp` 或 `udp`)、本地地址、远端地址(如果有客户端连接)、状态(如 `LISTEN` 或 `ESTABLISHED`),以及对应的进程 ID (PID)和程序名称。 ### 使用 `ss` 命令 `ss` 命令相较于 `netstat` 更加现代和功能丰富。它同样可以用于检查端口占用情况。 #### 基本语法: ``` ss -tnlp ``` 这条命令的功能类似于 `netstat -tuln`,但它通常在较新的版本的 Linux 发行版中可用,尤其是在基于 Debian 的发行版上。 **输出解释**: `ss` 命令的输出与 `netstat` 相似,但在样式和信息呈现上有细微差别。例如,它可以更容易地过滤和排序结果,而且输出更易读。 通过上述命令,你可以轻松地确定哪些端口正被服务占用,在排查服务器问题时提供重要信息。如果需要进一步的定制查询(比如仅查看特定端口的状态),可以通过增加参数或者利用管道(`|`)结合其他命令进行细化筛选。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值