diff --git a/disk.go b/disk.go new file mode 100644 index 0000000..242d35b --- /dev/null +++ b/disk.go @@ -0,0 +1,11 @@ +package wincmd + +import "b612.me/wincmd/ntfs/usn" + +func ListDrivers() ([]string, error) { + return usn.ListDrivers() +} + +func GetDiskInfo(disk string) (usn.DiskInfo, error) { + return usn.GetDiskInfo(disk) +} diff --git a/go.mod b/go.mod new file mode 100644 index 0000000..0281273 --- /dev/null +++ b/go.mod @@ -0,0 +1,9 @@ +module b612.me/wincmd + +go 1.16 + +require ( + b612.me/stario v0.0.5 + b612.me/win32api v0.0.1 + golang.org/x/sys v0.0.0-20220310020820-b874c991c1a5 +) diff --git a/go.sum b/go.sum new file mode 100644 index 0000000..fa8b317 --- /dev/null +++ b/go.sum @@ -0,0 +1,16 @@ +b612.me/stario v0.0.5 h1:Q1OGF+8eOoK49zMzkyh80GWaMuknhey6+PWJJL9ZuNo= +b612.me/stario v0.0.5/go.mod h1:or4ssWcxQSjMeu+hRKEgtp0X517b3zdlEOAms8Qscvw= +b612.me/win32api v0.0.1 h1:vLFB1xhO6pd9+zB2EyaapKB459Urv3v+C1YwgwOFEWo= +b612.me/win32api v0.0.1/go.mod h1:MHu0JBQjzxQ2yxpZPUBbn5un45o67eF5iWKa4Q9e0yE= +golang.org/x/crypto v0.0.0-20220313003712-b769efc7c000 h1:SL+8VVnkqyshUSz5iNnXtrBQzvFF2SkROm6t5RczFAE= +golang.org/x/crypto v0.0.0-20220313003712-b769efc7c000/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4= +golang.org/x/net v0.0.0-20211112202133-69e39bad7dc2/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= +golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20210423082822-04245dca01da/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20210615035016-665e8c7367d1/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20220310020820-b874c991c1a5 h1:y/woIyUBFbpQGKS0u1aHF/40WUDnek3fPOyD08H5Vng= +golang.org/x/sys v0.0.0-20220310020820-b874c991c1a5/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1 h1:v+OssWQX+hTHEmOBgwxdZxK4zHq3yOs8F9J7mk0PY8E= +golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= +golang.org/x/text v0.3.6/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= +golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= diff --git a/ntfs/cmd/example/main.go b/ntfs/cmd/example/main.go index 493edb4..b7661e6 100644 --- a/ntfs/cmd/example/main.go +++ b/ntfs/cmd/example/main.go @@ -1,9 +1,9 @@ package main import ( - "b612.me/starlog" "b612.me/wincmd" "b612.me/wincmd/ntfs/mft" + "b612.me/wincmd/ntfs/usn" "b612.me/wincmd/ntfs/utf16" "encoding/binary" "errors" @@ -23,7 +23,7 @@ func main() { } recordSize := int64(1024) i := int64(0) - starlog.Infoln("start size is", size) + fmt.Println("start size is", size) alreadyGot := int64(0) maxRecordSize := size / recordSize if maxRecordSize > 1024 { @@ -85,15 +85,15 @@ func main() { } } } - starlog.Infoln(i) + fmt.Println(i) //go http.ListenAndServe("0.0.0.0:8888", nil) - starlog.Debugln("开始获取Windows磁盘列表") + fmt.Println("开始获取Windows磁盘列表") lists, err := wincmd.ListDrivers() if err != nil { panic(err) } - info := []wincmd.DiskInfo{} + info := []usn.DiskInfo{} for _, v := range lists { data, err := wincmd.GetDiskInfo(v) if err != nil { @@ -102,13 +102,13 @@ func main() { fmt.Println("获取到磁盘信息:", data) info = append(info, data) } - starlog.Warningln("忽略非NTFS磁盘") + fmt.Println("忽略非NTFS磁盘") var m runtime.MemStats for _, v := range info { if v.Format == "NTFS" && v.Driver == `C:\` { - starlog.Infoln("开始获取NTFS USN日志,磁盘:", v.Driver) - fileLists, err := wincmd.ListUsnFileFn(v.Driver, func(name string, typed bool) bool { + fmt.Println("开始获取NTFS USN日志,磁盘:", v.Driver) + fileLists, err := usn.ListUsnFileFn(v.Driver, func(name string, typed bool) bool { return true if ok, _ := regexp.MatchString(`\.exe$`, name); ok { return true @@ -116,7 +116,7 @@ func main() { return false }) if err != nil { - starlog.Panicln("获取失败", err) + panic(err) } fmt.Println(len(fileLists)) return