我正在使用以下代码段:-
command:= exec.Command("./"+order)
out, err := command.Output()
if err != nil {
log.Println(err)
}
fmt.Println(string(out))
此处,“ order”是当前目录中二进制名称的变量。当我运行此代码时,它不会要求输入,并一直运行到二进制文件,直到其打印输出语句结束为止。在运行二进制可执行文件时如何获取输入?
我也尝试过在go中使用python,但没有效果。
答案 0 :(得分:0)
此代码要求您输入名称,然后将其传递给b1 = Button(root, text='add', command = lambda: abc(a,b))
二进制文件,该文件将读取第一个参数并输出第一个参数。
./hello
hello.go:
package main
import (
"bufio"
"fmt"
"log"
"os"
"os/exec"
)
func main() {
reader := bufio.NewReader(os.Stdin)
fmt.Print("What's your name: ")
name, _ := reader.ReadString('\n')
command := exec.Command("./hello", name)
out, err := command.Output()
if err != nil {
log.Println(err)
}
fmt.Println(string(out))
}