go - 如何在 Go 中获取监听端口的服务的详细信息
问题描述
我正在开发一个项目,该项目需要根据某些条件与在 localhost 中侦听端口 55555 的服务或该服务的 docker 容器进行通信。如果该服务已经在侦听端口 55555,那么我必须与之通信并跳过启动其 docker 容器。
我如何知道哪个服务正在侦听端口 55555?Go中是否有任何解决方法可以做到这一点?
解决方案
command := "lsof -i:55555"
cmd := exec.Command("/bin/bash", "-c", command)
bytes,err := cmd.Output()
if err != nil {
log.Println(err)
}
resp := string(bytes)
log.Println(resp)
你可以通过 golang 代码执行 shell
推荐阅读
- plotly - 如果 Atom 没有在文件夹中找到 .csv 文件,我该怎么办?
- python-3.x - 删除所有与用户相关的任务
- php - 如何使用 php 文件连接到 Android 上的 MediaPlayer
- sql - 当我们使用加法赋值 (+=) 时更新空值
- html - 视差效果:一个 div 在另一个 div 上?
- reactjs - 反应状态更新未定义并且不渲染
- macros - Lisp 宏找不到适用的函数
- python - 有没有办法使用 react js 前端来调用烧瓶安全功能?
- angular - Angular FormArray 索引未传递到输入文件类型更改事件
- rust - 在 Rust 中切换二维数组中的列和行的最佳方法是什么?