From a6efedf84d8c8efaeb8ffb92d53da62bb63a6ea7 Mon Sep 17 00:00:00 2001 From: v_zhibsong Date: Sat, 7 Nov 2020 18:03:23 +0800 Subject: [PATCH] change2 --- server/utils/file_operations.go | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) diff --git a/server/utils/file_operations.go b/server/utils/file_operations.go index 66d57c74..9eb99232 100644 --- a/server/utils/file_operations.go +++ b/server/utils/file_operations.go @@ -1,7 +1,6 @@ package utils import ( - "errors" "os" "path/filepath" ) @@ -21,9 +20,18 @@ func FileMove(src string, dst string) (err error) { if err != nil { return err } - if !filepath.IsAbs(dst) && !filepath.IsAbs(src) { - return errors.New(dst + " or " + src + " path is not abs") + var revoke = false +Redirect: + _, err = os.Stat(filepath.Dir(dst)) + if err != nil { + err = os.MkdirAll(filepath.Dir(dst), 0755) + if err != nil { + return err + } + if !revoke { + revoke = true + goto Redirect + } } - // TODO 判断文件夹是否存在,不存在mkdir return os.Rename(src, dst) -} \ No newline at end of file +} -- GitLab