more good GetAge
This commit is contained in:
parent
1c185ff075
commit
8f8e6ffdc8
@ -9,6 +9,7 @@ import (
|
|||||||
"regexp"
|
"regexp"
|
||||||
"strconv"
|
"strconv"
|
||||||
"strings"
|
"strings"
|
||||||
|
"syscall"
|
||||||
"time"
|
"time"
|
||||||
)
|
)
|
||||||
|
|
||||||
@ -236,16 +237,21 @@ func GetShell() string {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func GetAge() string {
|
func GetAge() string {
|
||||||
out, err := exec.Command("stat", "-c", "%W", "/").Output()
|
info, err := os.Stat("/etc/machine-id")
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
info, err = os.Stat("/")
|
||||||
|
if err != nil {
|
||||||
|
return "unknown"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
stat, ok := info.Sys().(*syscall.Stat_t)
|
||||||
|
if !ok {
|
||||||
return "unknown"
|
return "unknown"
|
||||||
}
|
}
|
||||||
birthTime := strings.TrimSpace(string(out))
|
|
||||||
if birthTime == "0" || birthTime == "-" {
|
birthTime := time.Unix(stat.Ctim.Sec, stat.Ctim.Nsec)
|
||||||
return "unknown"
|
days := int(time.Since(birthTime).Hours() / 24)
|
||||||
}
|
|
||||||
age, _ := strconv.Atoi(birthTime)
|
return fmt.Sprintf("%d days", days)
|
||||||
age = int(time.Now().Unix() - int64(age))
|
|
||||||
birth := age / 86400
|
|
||||||
return fmt.Sprintf("%d days", birth)
|
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user