package main
import (
"fmt"
"github.com/shirou/gopsutil/cpu"
"github.com/shirou/gopsutil/disk"
"github.com/shirou/gopsutil/mem"
)
func main() {
// 获取CPU信息
cpuInfo, err := cpu.Info()
if err != nil {
fmt.Println("无法获取CPU信息:", err)
return
}
// 获取内存信息
memInfo, err := mem.VirtualMemory()
if err != nil {
fmt.Println("无法获取内存信息:", err)
return
}
// 获取硬盘信息
diskPartitions, err := disk.Partitions(true)
if err != nil {
fmt.Println("无法获取硬盘信息:", err)
return
}
// 打印获取到的信息
fmt.Println("CPU信息:")
for _, info := range cpuInfo {
fmt.Printf("型号: %v 核心数: %v\n", info.ModelName, info.Cores)
}
fmt.Println("\n内存信息:")
fmt.Printf("总内存: %v MB 已使用内存: %v MB\n", memInfo.Total/1024/1024, memInfo.Used/1024/1024)
fmt.Println("\n硬盘信息:")
for _, partition := range diskPartitions {
usage, _ := disk.Usage(partition.Mountpoint)
fmt.Printf("设备: %v 容量: %v GB 已使用: %v GB\n", partition.Device, usage.Total/1024/1024/1024, usage.Used/1024/1024/1024)
}
}