最近在跟朋友写一个原创项目,网关部分需要监视cpu使用率,我们希望尽可能不调用第三方的包。
exec.Command可以直接调用外部命令。测试代码如下:
func TestExecCommand(t *testing.T) {
cmd := exec.Command("wmic", "cpu", "get", "loadpercentage")
r, err := cmd.Output()
if err != nil {
fmt.Println(err)
}
rate := strings.Split(string(r), "\n")[1]
fmt.Println(rate)
}
测试结果如下:
=== RUN TestExecCommand
20
--- PASS: TestExecCommand (1.18s)
PASS
ok gate/test 1.325s
> 测试运行完成时间: 2022/9/23 08:56:17 <
缺点是部署到不同的平台得改一下命令再测试