You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

46 lines
965 B

  1. package utils
  2. import (
  3. "gin-vue-admin/global"
  4. "os"
  5. )
  6. // @title PathExists
  7. // @description 文件目录是否存在
  8. // @auth (2020/04/05 20:22)
  9. // @param path string
  10. // @return err error
  11. func PathExists(path string) (bool, error) {
  12. _, err := os.Stat(path)
  13. if err == nil {
  14. return true, nil
  15. }
  16. if os.IsNotExist(err) {
  17. return false, nil
  18. }
  19. return false, err
  20. }
  21. // @title createDir
  22. // @description 批量创建文件夹
  23. // @auth (2020/04/05 20:22)
  24. // @param dirs string
  25. // @return err error
  26. func CreateDir(dirs ...string) (err error) {
  27. for _, v := range dirs {
  28. exist, err := PathExists(v)
  29. if err != nil {
  30. return err
  31. }
  32. if !exist {
  33. global.GVA_LOG.Debug("create directory ", v)
  34. err = os.MkdirAll(v, os.ModePerm)
  35. if err != nil {
  36. global.GVA_LOG.Error("create directory", v, " error:", err)
  37. }
  38. }
  39. }
  40. return err
  41. }