Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package main
- import (
- "bufio"
- "fmt"
- "io"
- "log"
- "os"
- "os/exec"
- )
- func main() {
- cmd := exec.Command("./dfrotz", "zork.z5")
- stdout, err := cmd.StdoutPipe()
- if err != nil {
- log.Fatal(err)
- }
- stdin, err := cmd.StdinPipe()
- if err != nil {
- log.Fatal(err)
- }
- defer stdin.Close()
- if err := cmd.Start(); err != nil {
- log.Fatal(err)
- }
- buf := make([]byte, 500)
- n, err := stdout.Read(buf)
- if err != nil {
- log.Fatal(err)
- }
- fmt.Println(string(buf[:n]))
- reader := bufio.NewReader(os.Stdin)
- fmt.Print("?> ")
- text, err := reader.ReadString('\n')
- if err != nil {
- log.Fatal(err)
- }
- io.WriteString(stdin, text)
- n, err = stdout.Read(buf)
- if err != nil {
- log.Fatal(err)
- }
- fmt.Println(string(buf[:n]))
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement