golang判断文件或文件夹是否存在的方法为使用os.Stat()函数返回的错误值进行判断:
- 如果返回的错误为nil,说明文件或文件夹存在
- 如果返回的错误类型使用os.IsNotExist()判断为true,说明文件或文件夹不存在
- 如果返回的错误为其它类型,则不确定是否在存在
func PathExists(path string) (bool, error) { _, err := os.Stat(path) if err == nil { return true, nil } if os.IsNotExist(err) { return false, nil } return false, err }
有疑问加站长微信联系(非本文作者)

这么别扭
1
这个当前权限不对的时候, 判断是不准确的。
比如普通用户判断
/root/abcd
文件是否存在。 会返回true。 其实文件不存在,报的权限不足错误。