Go에서 터미널 크기를 얻으려면 다음 단계를 수행할 수 있습니다.
이를 달성하는 한 가지 방법은 다음과 같습니다. 이는 exec 패키지를 사용하는 것입니다:
package main import ( "fmt" "log" "os/exec" ) func main() { out, err := exec.Command("stty", "size").Output() if err != nil { log.Fatal(err) } fmt.Printf("out: %s", out) }
그러나 위 코드에서는 프로세스는 현재 터미널과 연결되어 있지 않습니다. 이 문제를 해결하려면 stty 명령을 현재 터미널과 통합하는 것을 고려할 수 있습니다.
또는 golang.org/x/crypto/ssh 패키지 내의 터미널 패키지를 활용하여 터미널 크기를 쉽게 얻을 수 있습니다. :
package main import ( "fmt" "golang.org/x/crypto/ssh/terminal" ) func main() { width, height, err := terminal.GetSize(int(os.Stdin.Fd())) if err != nil { fmt.Printf("Error: %s", err) } fmt.Printf("Width: %d, Height: %d", width, height) }
이 방법은 syscall을 사용하여 지정된 파일 설명자에 대한 터미널 크기를 가져오고 터미널 크기를 얻기 위한 보다 맞춤화된 솔루션을 제공합니다. 정보입니다.
위 내용은 Go에서 터미널 크기를 어떻게 알 수 있나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!