系统检测应用(1)
测试环境:
- ubuntu16.04
- golang: go1.8
内容
GetEnvFunc() :获取环境变量函数
GetEnvSvr() :当前只获取cpu核数
代码
package main import ( "bytes" "detect_sys/ming" "fmt" "os" "os/exec" /* "strconv" */ "strings" ) // OsEnv 系统环境变量获取 type OsEnv struct { EnvUser string EnvHome string Pid int } func main() { fmt.Println("start") fmt.Println(GetEnvFunc()) GetEnvSvr() ming.StrFunc() fmt.Println("end") } //GetEnvFunc 获取环境变量函数 func GetEnvFunc() (res OsEnv) { res.EnvUser = os.Getenv("USER") res.EnvHome = os.Getenv("HOME") res.Pid = os.Getpid() return res } // GetEnvSvr 1.获取cpu核数 func GetEnvSvr() int { cmd := exec.Command("/bin/bash","-c","lscpu |grep 'cpu(s)' |grep -v 'li'|grep -v '-'|awk '{print $1}'") var out bytes.Buffer cmd.Stdout = &out err := cmd.Run() if err != nil { fmt.Println("error") return -1 } // 去除空格 str := strings.Replace(out.String()," ","",-1) // 去除换行符 str = strings.Replace(str,"\n",-1) fmt.Println("cpu核数:" + str) return 1 }