"echo "ABCD" | go run test.go", как сохранить это "ABCD " в переменную в test,go?
читать из os.Stdin
а если мне надо принять аутпут с другой программы в другую? "./quadA 3 3 | ./quadchecker". Надо с quadA принять несколько строк в quadchecker
тогда читай из os.Stdin (fmt.Scan / bufio.Scanner) и пиши в os.Stdout (fmt.Print)
sc := bufio.NewScanner(os.Stdin) for sc.Scan() { txt := sc.Text() fmt.Printf("Эхо: %s\n", txt) }
А если у меня идёт вывод по одному символу? Он будет ждать \n или будет принимать по одному символу?
можно по символу сделать
Не, мне надо по строкам
scanner := bufio.NewScanner(strings.NewReader(input)) scanner.Split(bufio.ScanLines) for scanner.Scan() { fmt.Println(scanner.Text()) }
Обсуждают сегодня