// Package system... // // Description : system... // // Author : go_developer@163.com<白茶清欢> // // Date : 2021-10-12 8:06 下午 package system import ( "github.com/shirou/gopsutil/disk" ) // GetDiskInfo 获取磁盘信息 // // Author : go_developer@163.com<白茶清欢> // // Date : 8:06 下午 2021/10/12 func GetDiskInfo() (*OutputDiskInfo, error) { var ( partitionList []disk.PartitionStat diskUseStatList []*disk.UsageStat err error diskList []*DiskDetail ) partitionList = make([]disk.PartitionStat, 0) diskUseStatList = make([]*disk.UsageStat, 0) diskList = make([]*DiskDetail, 0) if partitionList, err = disk.Partitions(true); nil != err { return nil, err } for _, part := range partitionList { diskInfo, _ := disk.Usage(part.Mountpoint) diskList = append(diskList, &DiskDetail{ PartitionStat: part, DiskStat: diskInfo, }) diskUseStatList = append(diskUseStatList, diskInfo) } ioStat, _ := disk.IOCounters() return &OutputDiskInfo{ DiskList: diskList, IOStat: ioStat, }, nil }