Files
d-eyes/basicinfo/info/summary_windows.go
2023-11-08 15:31:09 +08:00

75 lines
1.9 KiB
Go

package info
import (
"fmt"
"os"
"os/exec"
"os/user"
"github.com/shirou/gopsutil/v3/host"
)
func SaveSummaryBaseInfo() {
f, err := os.Create("SummaryBaseInfo.txt")
if err != nil {
fmt.Println(err)
return
}
baseInfo := GetBaseInfo()
_, err = f.WriteString("HostInfo: \n" + baseInfo)
users := GetWindowsUser()
_, err = f.WriteString("AllUsers: \n")
for _, userInfo := range users {
_, err = f.WriteString(" * " + userInfo + "\n")
}
crontab := GetCronTab()
crontabString := ""
crontabString += "Os Crontab: \n==============================================================================================\n"
for _, item := range crontab {
crontabString += "*NAME: " + item.Name + "\n" +
"*COMMAND: " + item.Command + "\n" +
"*ARG: " + item.Arg + "\n" +
"*USER: " + item.User + "\n" +
"*RULE: " + item.Rule + "\n" +
"*DESCRIPTION: " + item.Description + "\n" +
"==============================================================================================\n"
}
_, err = f.WriteString(crontabString)
_, err = f.WriteString("InterfaceInfo: ")
if err == nil {
path, _ := os.Getwd()
fmt.Println("Summary file to ", path+"\\SummaryBaseInfo.txt")
fmt.Println("Summary Base Info file created!")
} else {
fmt.Println(err)
return
}
f.Close()
c := exec.Command("cmd", "/C", "ipconfig /all>>SummaryBaseInfo.txt")
if err := c.Run(); err != nil {
fmt.Println("Error: ", err)
}
}
func GetBaseInfo() string {
infoStat, _ := host.Info()
platform := infoStat.Platform + " " + infoStat.PlatformVersion
OsKernel := infoStat.KernelArch + " " + infoStat.KernelVersion
userInfo, _ := user.Current()
baseInfo := ""
baseInfo += " * OS VERSION: " + platform + "\n" +
" * KERNEL VERSION: " + OsKernel + "\n" +
" * CURRENT USER: " + userInfo.Username + "\n"
return baseInfo
}