Go 语言版本的 psutil

qcpm1983 · · 8372 次点击 · · 开始浏览    
这是一个创建于 的文章,其中的信息可能已经有所发展或是发生改变。

psutil

没事逛 github ,发现 python 上收集系统信息的著名模块 psutil 已经有 go 的版本,迫不及待下载下来把玩一下。

github 上的地址是 https://github.com/shirou/gopsutil

显示本机的一些基本信息

package main

import (
    "fmt"
    "github.com/shirou/gopsutil/cpu"
    "github.com/shirou/gopsutil/disk"
    "github.com/shirou/gopsutil/host"
    "github.com/shirou/gopsutil/mem"
)

func main() {
    v, _ := mem.VirtualMemory()
    c, _ := cpu.CPUInfo()
    d, _ := disk.DiskUsage("/")
    n, _ := host.HostInfo()

    fmt.Printf("        Mem       : %v GB  Free: %v MB Usage:%f%%\n", v.Total/4/1024/1024/1024/1024, v.Free/4/1024/1024/1024, v.UsedPercent)
    if len(c) > 1 {
        for _, sub_cpu := range c {
            modelname := sub_cpu.ModelName
            cores := sub_cpu.Cores
            fmt.Printf("        CPU       : %v   %v cores \n", modelname, cores)
        }
    } else {
        sub_cpu := c[0]
        modelname := sub_cpu.ModelName
        cores := sub_cpu.Cores
        fmt.Printf("        CPU       : %v   %v cores \n", modelname, cores)

    }
    fmt.Printf("        HD        : %v GB  Free: %v GB Usage:%f%%\n", d.Total/1024/1024/1024, d.Free/1024/1024/1024, d.UsedPercent)
    fmt.Printf("        OS        : %v   %v  \n", n.OS, n.PlatformVersion)
    fmt.Printf("        Hostname  : %v  \n", n.Hostname)

}

运行结果如下:

$ status
Mem       : 8 GB  Free: 0 MB Usage:99.999886%
CPU       : Intel(R) Core(TM) i5-4278U CPU @ 2.60GHz   2 cores
HD        : 256 GB  Free: 39 GB Usage:64.653732%
Hostname  : xxx-Pro.local
OS_Version: 14.1.0

有疑问加站长微信联系(非本文作者)

本文来自:CSDN博客

感谢作者:qcpm1983

查看原文:Go 语言版本的 psutil

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889

8372 次点击  
加入收藏 微博
暂无回复
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传