diff --git a/core/sys.go b/core/sys.go index c5f90e7..1236962 100644 --- a/core/sys.go +++ b/core/sys.go @@ -36,7 +36,7 @@ func Daemon() { panic(err) } logs.Info(sillyGirl.Get("name", "傻妞") + "以静默形式运行") - os.WriteFile(pidf, []byte(fmt.Sprintf("%d", proc.Process.Pid)), 0o644) + WriteToFile(pidf, (fmt.Sprintf("%d", proc.Process.Pid))) os.Exit(0) } diff --git a/core/test.go b/core/test.go index b94979c..8b47b8b 100644 --- a/core/test.go +++ b/core/test.go @@ -4,7 +4,6 @@ import ( "errors" "fmt" "io/ioutil" - "os" "os/exec" "strings" "time" @@ -251,7 +250,7 @@ Alias=sillyGirl.service` s.Reply(data) return nil } - os.WriteFile("/usr/lib/systemd/system/sillyGirl.service", []byte(service), 0o644) + WriteToFile("/usr/lib/systemd/system/sillyGirl.service", (service)) exec.Command("systemctl", "disable", string(sillyGirl)).Output() exec.Command("systemctl", "enable", string(sillyGirl)).Output() return "电脑重启后生效。" diff --git a/core/utils.go b/core/utils.go new file mode 100644 index 0000000..4d57e23 --- /dev/null +++ b/core/utils.go @@ -0,0 +1,18 @@ +package core + +import ( + "fmt" + "os" +) + +func WriteToFile(fileName string, content string) error { + f, err := os.OpenFile(fileName, os.O_WRONLY|os.O_TRUNC|os.O_CREATE, 0644) + if err != nil { + fmt.Println("file create failed. err: " + err.Error()) + } else { + n, _ := f.Seek(0, os.SEEK_END) + _, err = f.WriteAt([]byte(content), n) + defer f.Close() + } + return err +}