tools.aw_id

Yohn Y. 2023-10-01 Parent:e2724947cc46 Child:6ab692934e18

4:895fe3defd26 Go to Latest

tools.aw_id/src/main.go

. Убираем лишний чимвол в имени файла

History
awgur@3 1 // devel.a0fs.ru -- aw_id -- v0.r202309.2 //
awgur@0 2 /*
awgur@0 3 Утилиты генерирования полезных в работе ID
awgur@0 4 */
awgur@0 5 package main
awgur@0 6
awgur@0 7 import (
awgur@0 8 "fmt"
awgur@0 9 "os"
awgur@0 10 "time"
awgur@0 11
awgur@0 12 "github.com/google/uuid"
awgur@0 13 )
awgur@0 14
awgur@0 15 const (
awgur@0 16 TIME_ID = iota
awgur@0 17 TIME_HUM
awgur@0 18 TIME_HUM_SAFE
awgur@0 19 TIME_HUM_SAFE2
awgur@2 20 TIME_ID_SHORT
awgur@2 21 TIME_ID_SHORT2
awgur@0 22 )
awgur@0 23
awgur@0 24 func get_time_id(id_type int) string {
awgur@0 25 cur_time := time.Now()
awgur@0 26 var time_format string = time.RFC3339
awgur@0 27
awgur@0 28 switch id_type {
awgur@0 29 case TIME_ID:
awgur@0 30 time_format = "20060102-150405"
awgur@0 31 case TIME_HUM:
awgur@0 32 time_format = "2006-01-02 15:04:05"
awgur@0 33 case TIME_HUM_SAFE:
awgur@0 34 time_format = "2006-01-02 15-04-05"
awgur@0 35 case TIME_HUM_SAFE2:
awgur@0 36 time_format = "2006-01-02_15-04-05"
awgur@2 37 case TIME_ID_SHORT:
awgur@3 38 time_format = "20060102"
awgur@2 39 case TIME_ID_SHORT2:
awgur@3 40 time_format = "200601"
awgur@0 41 }
awgur@0 42
awgur@0 43 return cur_time.Format(time_format)
awgur@0 44 }
awgur@0 45
awgur@0 46 func get_uuid() string {
awgur@0 47 res := uuid.New()
awgur@0 48 return res.String()
awgur@0 49 }
awgur@0 50
awgur@0 51 func prnt_out(k, v string) {
awgur@0 52 fmt.Printf("%10s : %s\n", k, v)
awgur@0 53 }
awgur@0 54
awgur@0 55 func make_all_ids() {
awgur@0 56 prnt_out("uuid", get_uuid())
awgur@0 57 prnt_out("ts", get_time_id(TIME_ID))
awgur@2 58 prnt_out("tss", get_time_id(TIME_ID_SHORT))
awgur@2 59 prnt_out("tss2", get_time_id(TIME_ID_SHORT2))
awgur@0 60 prnt_out("hr", get_time_id(TIME_HUM))
awgur@0 61 prnt_out("hrs", get_time_id(TIME_HUM_SAFE))
awgur@0 62 prnt_out("hrs2", get_time_id(TIME_HUM_SAFE2))
awgur@0 63 fmt.Println("")
awgur@0 64 }
awgur@0 65
awgur@0 66 func main() {
awgur@0 67 if len(os.Args) > 1 {
awgur@0 68 switch os.Args[1] {
awgur@0 69 case "uuid":
awgur@0 70 fmt.Println(get_uuid())
awgur@0 71 case "ts":
awgur@0 72 fmt.Println(get_time_id(TIME_ID))
awgur@0 73 case "hr":
awgur@0 74 fmt.Println(get_time_id(TIME_HUM))
awgur@0 75 case "hrs":
awgur@0 76 fmt.Println(get_time_id(TIME_HUM_SAFE))
awgur@0 77 case "hrs2":
awgur@0 78 fmt.Println(get_time_id(TIME_HUM_SAFE2))
awgur@2 79 case "tss":
awgur@2 80 fmt.Println(get_time_id(TIME_ID_SHORT))
awgur@2 81 case "tss2":
awgur@2 82 fmt.Println(get_time_id(TIME_ID_SHORT2))
awgur@0 83 default:
awgur@2 84 fmt.Println("Need one of: uuid, ts, tss, tss2, hr, hrs, hrs2")
awgur@0 85 }
awgur@0 86 fmt.Println("")
awgur@0 87 } else {
awgur@0 88 make_all_ids()
awgur@0 89 }
awgur@0 90 }