Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package main
- import "os/exec"
- import "github.com/golang/glog"
- import "fmt"
- import "strings"
- import "errors"
- func thisWorks() {
- str_out := "hello world n How are you nthis is good"
- lines := strings.Split(str_out, "n")
- fmt.Printf("lines is n%sn", lines)
- }
- func GetFreeOutput() error {
- var errMsg string
- bytes_out, err := exec.Command("free").Output()
- // This shows that the output has 10 (newline) in it.
- fmt.Println(bytes_out)
- if err != nil {
- errMsg = "Error geting output of free command"
- glog.Fatal(errMsg)
- return errors.New(errMsg)
- }
- str_out := string(bytes_out)
- fmt.Printf("str_out is n%s", str_out)
- // This is not splitting the lines, it is converting the whole output to a single line.
- fmt.Println("nLines are ", strings.Split(str_out, "n"))
- index_of_newline := strings.Index(str_out, "n")
- // This gives the index of "n" as 79 on my machine, which is correct.
- fmt.Printf("nIndex is %d", index_of_newline)
- fmt.Println("nLine using index are ", strings.Split(str_out, string(str_out[index_of_newline])))
- return nil
- }
- func main() {
- err := GetFreeOutput()
- fmt.Printf("Error is %s", err)
- }
Add Comment
Please, Sign In to add comment