I have use exec.Command(command)
on golang and convert it to string. When I RunCommand systeminfo
on windowOS it return string type key:value
. How to convert it to json?
Code:
// Version Function:
func Version() (version string) {
os := OS()
if os == "macOS X" {
result := RunCommand("sw_vers")
resultRune := []rune(result)
version = string(resultRune[38:43]) // tested
}
if os == "Windows" {
result := RunCommand("systeminfo")
resultRune := []rune(result)
version = string(resultRune[:]) // not tested
}
if os == "Linux" {
result := RunCommand("lsb_release -a")
resultRune := []rune(result)
version = string(resultRune[:]) // not tested
}
return version
}
// RunCommand Function:
func RunCommand(command string) string {
cmd := exec.Command(command)
var stdout, stderr bytes.Buffer
cmd.Stdout = &stdout
cmd.Stderr = &stderr
err := cmd.Run()
if err != nil {
log.Fatalf("Command "+command+" failed with %s
", err)
}
outStr := string(stdout.Bytes())
return outStr
}