Jak uzyskać rozmiar tty za pomocą polecenia Idź językiem? Próbuję to zrobić, wykonując polecenie stty size
, ale nie mogę wykonać poprawnego kodu.Uzyskaj rozmiar terminala w Go
package main
import (
"os/exec"
"fmt"
"log"
)
func main() {
out, err := exec.Command("stty", "size").Output()
fmt.Printf("out: %#v\n", out)
fmt.Printf("err: %#v\n", err)
if err != nil {
log.Fatal(err)
}
}
wyjściowa:
out: []byte{}
err: &exec.ExitError{ProcessState:(*os.ProcessState)(0xc200066520)}
2013/05/16 02:35:57 exit status 1
exit status 1
Myślę, że to dlatego, że Go nie ikra proces związany z aktualnej konsoli, z którymi pracuje. Jak mogę powiązać polecenie z bieżącym terminalem, aby uzyskać jego rozmiar?
Możesz spróbować umieścić te linie w funkcji i ustawić test jednostkowy za pomocą modułu 'testing' w celu przetestowania funkcji, zobaczysz, że zawsze dostajesz pustą tablicę. – Kingname