相关疑难解决方法(0)

Golang从stdin读取,如何检测特殊键(输入,退格等等)

我有以下程序从stdin读取用户输入:

var input string = ""
            exec.Command("stty", "-F", "/dev/tty", "cbreak", "min", "1").Run()
            exec.Command("stty", "-F", "/dev/tty", "-echo").Run()
            var b []byte = make([]byte, 1)
            for {
                input += string(b)
            }
Run Code Online (Sandbox Code Playgroud)

我想在for循环中放置某种条件,以便当用户按下"enter"(例如)时可以"中断",或者当用户按下(退格键)时从字符串中删除一个char.但是,我无法弄清楚这两个键的字节数组或字符串表示是什么.我如何解决这个问题?输入只打印一个\ w和退格键修剪一个未定义的字符.

stdin go tty pty

3
推荐指数
1
解决办法
4335
查看次数

标签 统计

go ×1

pty ×1

stdin ×1

tty ×1