[Go語言] 如果目錄不存在,創建該目錄


如果目錄不存在,創建該目錄。否則不做任何事。

import "os"

func CreateDirIfNotExist(dir string) {
      if _, err := os.Stat(dir); os.IsNotExist(err) {
              err = os.MkdirAll(dir, 0755)
              if err != nil {
                      panic(err)
              }
      }
}

os.MkdirAll 跟 shell指令的 mkdir -p 類似。如果父目錄不存在, 會連父目錄一起創建。

Tested on: Go 1.8, Ubuntu Linux 16.10


References:

[1]
[2][Makefile] Create Directory If Not Exist
[3]Package write provides a way to atomically create or replace a file or symbolic link. : golang