diff --git a/date/.gitignore b/date/.gitignore new file mode 100644 index 0000000..594c1b0 --- /dev/null +++ b/date/.gitignore @@ -0,0 +1,2 @@ +date +date.exe diff --git a/date/Makefile b/date/Makefile new file mode 100644 index 0000000..bea7546 --- /dev/null +++ b/date/Makefile @@ -0,0 +1,4 @@ + + +build: + go build . diff --git a/date/go.mod b/date/go.mod new file mode 100644 index 0000000..fb82eb4 --- /dev/null +++ b/date/go.mod @@ -0,0 +1,3 @@ +module lcthw.dev/go/go-coreutils/date + +go 1.24.2 diff --git a/date/main.go b/date/main.go new file mode 100644 index 0000000..befbe17 --- /dev/null +++ b/date/main.go @@ -0,0 +1,29 @@ +package main + +import ( + "fmt" + "time" + "flag" +) + +func main() { + var result string + var universal bool + + it_is := time.Now() + + flag.BoolVar(&universal, "u", false, "UTC time.") + flag.Parse() + + if universal { + it_is = it_is.UTC() + } + + if flag.NArg() == 1 { + result = it_is.Format(flag.Args()[0]) + } else { + result = it_is.String() + } + + fmt.Println(result) +}