linux - 我如何在 Golang 程序中检测 linux 分布?

标签 linux ubuntu go rhel oracle-osm

我想编写独立于 Linux 发行版的 Golang 代码。我需要检测哪个 linux 发行版并需要在程序中运行特定于发行版的命令。就像 Ubuntu 的 dpkg 和 RHEL 的 rpm -q 一样。

最佳答案

您可以使用 exec.Cmd运行 lsb_release -auname -a 并解析输出以找出分布。

Reference

关于linux - 我如何在 Golang 程序中检测 linux 分布?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42386788/

相关文章:

安装后 MongoDB 4.2 无法在 ubuntu 18.04 上启动 - 进程立即停止

go - 生长 slice 和底层数组

json - 为什么 Go json.Marshal 拒绝这些结构标签? json 标签的正确语法是什么?

python - 在 Python 中产生和等待子进程

python - 如何使用 scapy 将选项缩放添加到 tcp 数据包

linux - Grep-ing 不可搜索的文件

php - Apache 耗尽所有内存,网站上没有访客

linux - 为什么我不能在 Raspberry Pi 上使用 GHC 7.8.4 安装任何软件包?

c++ - 在旧版本的 boost 中使用 recursive_directory_iterator ?

interface - 在 serverHTTP 中出错,但在我的代码中却没有,为什么?