Files
mc-tool/server/status.go
2026-06-24 14:05:44 -04:00

36 lines
611 B
Go

package server
import (
"bytes"
"fmt"
"os/exec"
"github.com/spf13/cobra"
)
func Status(cmd *cobra.Command, args []string) {
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)
}