Terminalgröße in Go ermitteln
In Go kann die Bestimmung der Größe des aktuellen Terminals eine Herausforderung sein. Ein gängiger Ansatz besteht in der Ausführung des Befehls „stty size“, der jedoch aufgrund von Prozessisolationsproblemen möglicherweise nicht immer effektiv ist.
Um dieses Problem zu beheben, bietet das Terminalpaket im SSH-Paket eine praktische Lösung. Mit der GetSize-Methode können Sie die Terminalgröße für einen bestimmten Dateideskriptor einfach abrufen:
package main import ( "golang.org/x/crypto/ssh/terminal" "log" "os" ) func main() { width, height, err := terminal.GetSize(int(os.Stdin.Fd())) if err != nil { log.Fatal(err) } log.Printf("Terminal width: %d, height: %d", width, height) }
Der Dateideskriptor des Terminals wird normalerweise mit os.Stdin.Fd() abgerufen, das eine Ganzzahl zurückgibt, die die darstellt aktuelle Standardeingabe (das ist das Terminal).
Durch die Verwendung der GetSize-Methode können Sie die Größe des Terminals genau bestimmen und so terminalfähige Anwendungen implementieren Los.
Das obige ist der detaillierte Inhalt vonWie erhalte ich die Terminalgröße in Go?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!