我想实现cat和golang的一个版本,并对其进行修改以制作其他有用的程序
答案 0 :(得分:1)
go-coreutils是您可以从中汲取灵感的一个很酷的项目。它具有诸如cat
之类的GNU核心命令行实用程序的Go实现。例如Here is cat。
答案 1 :(得分:0)
您应该看一下os.Open(...)
和io.Copy(...)
,但是,不仅限于此。
也许您应该真正从https://tour.golang.org/welcome/1上的教程开始
答案 2 :(得分:0)
这是一个开始,您可以像这样继续并管理标记等。
package main
import (
"fmt"
"io/ioutil"
"os"
)
func main() {
if len(os.Args) == 2 {
c, err := ioutil.ReadFile(os.Args[1])
if err != nil {
fmt.Println(err)
os.Exit(1)
}
fmt.Printf("%s\n", string(c))
} else {
for {
var newText string
fmt.Scanf("%s", &newText)
fmt.Println(newText)
}
}
}