我需要在go. 我尝试这样做:
lsCmd := exec.Command("bash", "-c", "ls")
lsOut, err := lsCmd.Output()
if err != nil {
panic(err)
}
fmt.Println(string(lsOut))
而且它似乎工作正常(本机 ubuntu 终端显示一个水平列表,这个函数的结果是垂直的)。
但是,如果我专门调用了错误的命令,例如exec.Command ("bash", "-c", "lss"),我会得到:
恐慌:退出状态 127
在本机 ubuntu 终端中,我得到以下结果:
找不到命令“lss”,您的意思是:
和命令的枚举。
如果我在标准 ubuntu 终端中编写命令,我需要与本机终端通信,并得到与命令结果相同的结果。
做这个的最好方式是什么?也许exec图书馆不适合这个?所有这些对于与 OS 终端的前端通信都是必需的。在一个简单的html/css/js页面上,用户输入一个命令,然后go将其发送到操作系统的本机终端,并将结果返回给前端。
如何获得与在本机终端中工作一样的执行命令结果?
慕慕森
相关分类