From 21696c7ed6371b34948e6dfe2246bdbaa1da8d6f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=AD=8F=E7=81=BF?= Date: Mon, 3 Jul 2023 13:48:51 +0800 Subject: [PATCH] =?UTF-8?q?=E5=86=99=E5=85=A5hosts?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/common/tools/hosts.go | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/src/common/tools/hosts.go b/src/common/tools/hosts.go index 210f71a..4315ccf 100644 --- a/src/common/tools/hosts.go +++ b/src/common/tools/hosts.go @@ -2,6 +2,7 @@ package tools import ( "bufio" + "fmt" "os" "strings" ) @@ -33,3 +34,23 @@ func HostsToJson() (data map[string][]string, err error) { } return data, nil } + +func MapToSaveHosts(data map[string][]string) error { + f, err := os.OpenFile("/etc/ansible/hosts", os.O_APPEND|os.O_CREATE|os.O_RDWR|os.O_TRUNC, 0777) + if err != nil { + return err + } + defer f.Close() + for k, v := range data { + _, err := f.Write([]byte(fmt.Sprintf("%s\n", k))) + if err != nil { + return err + } + + _, err = f.Write([]byte(strings.Join(v, "\n"))) + if err != nil { + return err + } + } + return nil +} -- 2.26.0