我在下面有一个 Unix 工具的实现cat
。它从缓冲区中读取多个字节os.Stdin
,然后将这些字节写入os.Stdout
. 有没有办法可以跳过缓冲区并Stdin
直接通过管道传输到Stdout
?
package main
import "os"
import "io"
func main() {
buf := make([]byte, 1024)
var n int
var err error
for err != io.EOF {
n, err = os.Stdin.Read(buf)
if n > 0 {
os.Stdout.Write(buf[0:n])
}
}
}