为了账号安全,请及时绑定邮箱和手机立即绑定

如何读取带有颜色属性的命令输出?

如何读取带有颜色属性的命令输出?

Go
当年话下 2023-06-05 16:58:04
是否可以读取带有颜色属性的命令输出。我的意思是,我们可以读取实际的转义序列吗?例如; 命令输出为红色:Hello我想把它读作:\033[31;1;4mHello\033[0m目前我正在阅读它:func stat(hash string) string {    cmd := exec.Command("git", "show", "--stat", hash)    out, err := cmd.Output()    if err != nil {        return err.Error()    }    return string(out)}
查看完整描述

1 回答

?
阿晨1998

TA贡献2037条经验 获得超6个赞

使用 github.com/creack/pty 库在 pty 中运行命令

这对我有用

转义序列在输出中可见

package main


import (

    "github.com/creack/pty"

    "io"

    "os"

    "os/exec"

)


func main() {

    hash := os.Args[1]

    cmd := exec.Command("git", "show", "--stat", hash)

    f, err := pty.Start(cmd)

    if err != nil {

        panic(err)

    }


    io.Copy(os.Stdout, f)

}


查看完整回答
反对 回复 2023-06-05
  • 1 回答
  • 0 关注
  • 97 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信