参考ページ2
test_exec.go
//コピーアンドペーストの産物 package main import ( "fmt" "exec" "io/ioutil" ) func main() { //序盤の2つ以外はおまじない? cmd, err := exec.Run("/bin/ls", []string{"ls", "/"}, nil, "", exec.Pipe, exec.Pipe, exec.DevNull) //例外処理? if err != nil { fmt.Printf("ERROR EXECUTING COMMAND: %d\n", err) os.Exit(1) } //cmd構造体の中にStdin, Stdoutはあったからexec.Runを実行すると //なんか色々起こって、これが可能になるんだと思う。 cmd.Stdin.Close(); buff, err := ioutil.ReadAll(cmd.Stdout) if err != nil { fmt.Printf("ERROR READING OUTPUT: %d\n", err) os.Exit(1) } else { //改行するとエラーが出る fmt.Printf("COMMAND RESULT: %s\n", buff) } }そんなに沢山の言語を使ったことないからわからないけど、凄いクセのある書き方をする言語だと感じた。if文の書き方まで厳密に決まってるし。
将来的にC#みたいに言語仕様がどんどん変わってJavaとかに近づいて行くのか?今のスタンスを維持して独自路線を突き進むのか?
個人的にはGoogleには後者であって欲しい。
0 件のコメント:
コメントを投稿