Golangで、最低限WindowsなのかLinuxなのか、Mac OS Xなのか程度に確認したい場合、「runtime.GOOS」を用いるといいようだ。

test.go
package main import ( "fmt" "runtime" ) func main() { fmt.Println(runtime.GOOS) }

上のコードを実行すると、Ubuntuの場合だと以下のような出力が得られる。

blacknon@blacknon-ThinkPad-X201:~$ cat test.go 
package main

import (
    "fmt"
    "runtime"
)

func main() {
    fmt.Println(runtime.GOOS)
}
blacknon@blacknon-ThinkPad-X201:~$ go run test.go 
linux

得られる値としては、こちらを見る限り以下のようだ。
結構あるな…

const goosList = "android darwin dragonfly freebsd linux nacl netbsd openbsd plan9 solaris windows zos"