Skip to content

Commit 3b28d3f

Browse files
committed
feat: 打扫垃圾
1 parent 3c03f84 commit 3b28d3f

File tree

3 files changed

+34
-6
lines changed

3 files changed

+34
-6
lines changed

core/argument.go

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,14 +5,19 @@ import (
55
"os"
66
)
77

8-
func Argument(gitversion string) {
8+
func Argument(gitversion string) bool {
9+
cleaninst := false
910
if len(os.Args) > 1 && os.Args[1] == "--help" {
1011
fmt.Println("--help 获取帮助")
1112
fmt.Println("--version 获取版本")
12-
return
13+
os.Exit(0)
1314
}
1415
if len(os.Args) > 1 && os.Args[1] == "--version" {
1516
fmt.Println("AutoInstall-" + gitversion)
16-
return
17+
os.Exit(0)
1718
}
19+
if len(os.Args) > 1 && os.Args[1] == "--clean" {
20+
cleaninst = true
21+
}
22+
return cleaninst
1823
}

main.go

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -66,6 +66,7 @@ func main() {
6666
if gitversion == "" {
6767
gitversion = "NaN"
6868
}
69+
cleaninst := core.Argument(gitversion)
6970
core.Argument(gitversion)
7071
os.MkdirAll(".autoinst/cache", os.ModePerm)
7172
instFile := "inst.json"
@@ -89,10 +90,12 @@ func main() {
8990
if config.Loader != "vanilla" {
9091
fmt.Printf("加载器: %s\n", config.Loader)
9192
fmt.Printf("加载器版本: %s\n", config.LoaderVersion)
92-
fmt.Println("\033[31m[警告] 加载器版本过新可能会无法正常下载\033[0m")
93+
if config.Download == "bmclapi" {
94+
fmt.Println("\033[31m[警告] 加载器版本过新可能会无法正常下载\033[0m")
95+
}
9396
}
9497
fmt.Printf("下载源: %s\n", config.Download)
95-
pkg.Common(config)
98+
pkg.Common(config, cleaninst)
9699
} else if os.IsNotExist(err) {
97100
log.Println("inst.json 文件不存在")
98101
} else {

pkg/common.go

Lines changed: 21 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,11 +3,12 @@ package pkg
33
import (
44
"fmt"
55
"log"
6+
"os"
67

78
"github.com/autoinst/AutoInstall/core"
89
)
910

10-
func Common(config core.InstConfig) {
11+
func Common(config core.InstConfig, cleaninst bool) {
1112
javaPath, simpfun, mise := core.FindJava()
1213
if simpfun {
1314
fmt.Println("已启用 simpfun 环境")
@@ -40,4 +41,23 @@ func Common(config core.InstConfig) {
4041
fmt.Println("服务端下载完成")
4142
core.RunScript(config.Version, config.Loader, config.LoaderVersion, simpfun, mise)
4243
}
44+
if cleaninst {
45+
fmt.Println("正在清理残留...")
46+
if err := os.Remove(".autoinst"); err != nil && !os.IsNotExist(err) {
47+
log.Println("删除 .autoinst 文件失败:", err)
48+
}
49+
files, err := os.ReadDir(".")
50+
if err == nil {
51+
for _, file := range files {
52+
if !file.IsDir() && len(file.Name()) > 4 && file.Name()[len(file.Name())-4:] == ".log" {
53+
if err := os.Remove(file.Name()); err != nil {
54+
fmt.Println("删除日志文件失败:", file.Name(), err)
55+
}
56+
}
57+
}
58+
} else {
59+
log.Println("读取目录失败:", err)
60+
}
61+
fmt.Println("清理完成")
62+
}
4363
}

0 commit comments

Comments
 (0)