github.com/caos/orbos@v1.5.14-0.20221103111702-e6cd0cea7ad4/internal/utils/helper/files.go (about) 1 package helper 2 3 import ( 4 "io" 5 "os" 6 ) 7 8 func FileExists(filename string) bool { 9 info, err := os.Stat(filename) 10 if os.IsNotExist(err) { 11 return false 12 } 13 return !info.IsDir() 14 } 15 16 func FolderExists(folder string) bool { 17 info, err := os.Stat(folder) 18 if os.IsNotExist(err) { 19 return false 20 } 21 return info.IsDir() 22 } 23 24 func FolderEmpty(folder string) (bool, error) { 25 f, err := os.Open(folder) 26 if err != nil { 27 return false, err 28 } 29 defer f.Close() 30 31 // read in ONLY one file 32 _, err = f.Readdir(1) 33 34 // and if the file is EOF... well, the dir is empty. 35 if err == io.EOF { 36 return true, nil 37 } 38 return false, err 39 }