Я использую пакет golang SSH для создания SSH клиента, я поставил режимы терминала, как показано нижеКак удалить код цвета в SSH клиента golang
// Set up terminal modes
modes := ssh.TerminalModes{
ssh.ECHO: 0, // disable echoing
ssh.TTY_OP_ISPEED: 14400, // input speed = 14.4kbaud
ssh.TTY_OP_OSPEED: 14400, // output speed = 14.4kbaud
}
// Request pseudo terminal
if err := session.RequestPty("xterm", 80, 40, modes); err != nil {
log.Fatalf("request for pseudo terminal failed: %s", err)
}
он отлично работает, но маленькая проблема, когда я используйте команду «LS», он возвращает имена с цветовым кодом, как показано ниже
[[email protected] ~]# ls
ls
anaconda-ks.cfg [0m[01;34mpeter[0m
[01;32mbuild.sh[0m [01;34mredis64[0m
это заставляет меня чувствовать себя трудно читать имена файлов, так есть ли способ, чтобы удалить код цвета вокруг имен? благодаря
Иметь 'не ls' вывода цветов:' Ls - цвет = never'? – Volker
Посмотрите на поле '' terminal.Terminal' '(https://godoc.org/golang.org/x/crypto/ssh/terminal#Terminal) '' Escape' и ['vt100EscapeCodes'] (https: //github.com/golang/crypto/blob/master/ssh/terminal/terminal.go#L24). Это может быть решением. – thwd
Вы утверждаете, что являетесь «xterm» (который поддерживает цвет). Может быть, выбрать другой тип терминала? –