package server import ( "bytes" "fmt" "os/exec" "github.com/spf13/cobra" ) func Status(cmd *cobra.Command, args []string) { dir := "." if len(args) > 0 { dir = args[0] } name := getServerName(dir) start_cmd := exec.Command("docker", "exec", name, "rcon-cli", "list") var outb, errb bytes.Buffer start_cmd.Stdout = &outb start_cmd.Stderr = &errb if err := start_cmd.Run(); err != nil { fmt.Println("offline") return } var active, max int _, err := fmt.Sscanf(outb.String(), "There are %d of a max of %d players online:", &active, &max) if err != nil { panic(err) } fmt.Printf("%d/%d players\n", active, max) }