在平常工作中可能会遇到需要获取本机mac地址或cpuid的场景,综合网上的办法,亲自试验总结如下:
1.如果只是要查本机sid地址,则很简单,直接在cmd命令窗口中输入命令:
whoami /user 回车即可
2.如果需要在程序中获取mac地址和cpuid,则可以参考以下代码:
package mainimport ("fmt""net""os/exec""regexp")func main() {var (mac stringcpuid string)mac = getMac()cpuid = getCpuId()fmt.Println("mac:" + mac)fmt.Println("cpuid:" + cpuid)}func getMac() string {// 获取本机的MAC地址interfaces, err := net.Interfaces()if err != nil {panic("Poor soul, here is what you got: " + err.Error())}inter := interfaces[0]mac := inter.HardwareAddr.String() //获取本机MAC地址//fmt.Println("MAC = ", mac)return mac}func getCpuId() string {cmd := mand("wmic", "cpu", "get", "ProcessorID")out, err := binedOutput()if err != nil {fmt.Println(err)}//fmt.Println(string(out))str := string(out)//匹配一个或多个空白符的正则表达式reg := regexp.MustCompile("\\s+")str = reg.ReplaceAllString(str, "")return str[11:]}
实际运行结果如下:
当然,前提是您的本机上得配置好go运行环境