我正在尝试从父进程获取交互式子进程(如python)的输出。我已经尝试过以下代码将进程stdin更改为os.Stdin,将stdout更改为os.Stdout,但是它不起作用。我在父终端上看不到子进程的输出。我错过了什么还是做错了吗?
func main(){
cmd := exec.Command("python")
cmd.Stdin = os.Stdin
cmd.Stdout = os.Stdout
cmd.Stderr = os.Stderr
err := cmd.Run()
if err != nil{
fmt.Println("Cannot Execute cmd.")
}
}
答案 0 :(得分:0)
运行exec.Command("python", "-i")
。
默认情况下,不在外壳中运行python
时,它不会进入交互模式,也不会打印出任何内容。