Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func ExpandHome ¶
ExpandHome will take a tilde(~)-prefixed path and resolve it to the actual path in-place. "Nested" user paths (~someuser/somechroot/~someotheruser) are not supported as home directories are expected to be absolute paths.
func MakeDirIfNotExist ¶
MakeDirIfNotExist will create a directory at a given path if it doesn't exist.
See also the documentation for RealPath.
func RealPath ¶
RealPath will transform a given path into the very best guess for an absolute path in-place.
It is recommended to check err (if not nil) for an invalid path error. If this is true, the path syntax/string itself is not supported on the runtime OS. This can be done via:
if errors.Is(err, fs.ErrInvalid) {...}
func RealPathExists ¶
RealPathExists is like RealPath, but will also return a boolean as to whether the path actually exists or not.
Note that err *may* be os.ErrPermission/fs.ErrPermission, in which case the exists value cannot be trusted as a permission error occurred when trying to stat the path - if the calling user/process does not have read permission on e.g. a parent directory, then exists may be false but the path may actually exist. This condition can be checked via via:
if errors.Is(err, fs.ErrPermission) {...}
See also the documentation for RealPath.
In those cases, it may be preferable to use RealPathExistsStat and checking stat for nil.
func RealPathExistsStat ¶
RealPathExistsStat is like RealPathExists except it will also return the os.FileInfo for the path (assuming it exists).
If stat is nil, it is highly recommended to check err via the methods suggested in the documentation for RealPath and RealPathExists.
Types ¶
This section is empty.