beancount-gs/script/utils.go

32 lines
622 B
Go
Raw Permalink Normal View History

2021-12-03 08:46:18 +00:00
package script
import (
2021-12-04 04:06:45 +00:00
"bytes"
"math/rand"
2021-12-03 08:46:18 +00:00
"net"
2021-12-04 04:06:45 +00:00
"time"
2021-12-03 08:46:18 +00:00
)
func GetIpAddress() string {
addrs, _ := net.InterfaceAddrs()
for _, value := range addrs {
if ipnet, ok := value.(*net.IPNet); ok && !ipnet.IP.IsLoopback() {
if ipnet.IP.To4() != nil {
return ipnet.IP.String()
}
}
}
return ""
}
2021-12-04 04:06:45 +00:00
const char = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789"
func RandChar(size int) string {
2021-12-06 13:44:56 +00:00
source := rand.NewSource(time.Now().UnixNano()) // 产生随机种子
2021-12-04 04:06:45 +00:00
var s bytes.Buffer
for i := 0; i < size; i++ {
2021-12-06 13:44:56 +00:00
s.WriteByte(char[source.Int63()%int64(len(char))])
2021-12-04 04:06:45 +00:00
}
return s.String()
}