write ahead log

ロールフォワード用

golangで実行中のOSの種類を判別する

簡単だった.ポータビリティがすごい.

package main

import (
    "fmt"
    "runtime"
)

func main() {
    switch runtime.GOOS {
    case "windows":
        fmt.Println("running on Windows.")
    case "darwing":
        fmt.Println("running on Mac OSX.")
    case "linux":
        fmt.Println("running on Linux.")
    case "freebsd":
        fmt.Println("running on BSD.")
    default:
        fmt.Println("running on Other OS.")
    }
}

[実行結果]

$ ./sample.exe
running on Windows.
  • darwin
  • windows
  • freebsd
  • linux

くらいあればとりあえずは事足りる気がする. (調べてないけど, Plan9とかも対応してそうだよね....)

参考

The Go Programming Language - Package runtime