У
есть задача создать файл go, который ведет себя как команда cat. У меня есть некоторые идеи, как это сделать, но я не знаю, как читать ввод, если не записаны имена файлов.
student@ubuntu:~/div-01/cat$ go build cat.go
student@ubuntu:~/div-01/cat$ ./cat
Hello
Hello
^C
student@ubuntu:~/div-01/cat$
Также я могу использовать только ioutil, io, os пакеты и один из школьных пакетов для печати продукции. В inte rnet нашел это, но он просто сохраняет весь ввод в data , а затем, после нажатия Ctrl + C, печатает его обратно.
package main
import (
"fmt"
"io/ioutil"
"os"
)
func main() {
var lenght int
args := os.Args[1:]
for i := range args {
lenght++
i++
}
if lenght == 0 {
data, err := ioutil.ReadAll(os.Stdin)
if err == nil {
fmt.Println(data)
}
}
}