PathKit
Effortless path operations in Swift.
Installation
Add this to your Package.swift
.Package(url: "https://github.com/kylef/Pathkit.git, majorVersion: 0, minor: 7)
Usage
let path = Path("/usr/bin/swift")
Joining paths
let path = Path("/usr/bin") + Path("swift")
var path = Path("/usr/bin")
path += Path("swift")
Determine if a path is absolute
path.isAbsolute
Determine if a path is relative
path.isRelative
Determine if a file or directory exists at the path
path.exists
Determine if a path is a directory
path.isDirectory
Get an absolute path
let absolutePath = path.absolute
Normalize a path
This cleans up any redundant ..
or .
and double slashes in paths.
let normalizedPath = path.normalized
Deleting a path
path.delete()
Moving a path
path.move(newPath)
Current working directory
Path.current
Path.current = "/usr/bin"
Changing the current working directory
path.chdir {
// Path.current would be set to path during execution of this closure
}
Children paths
path.children
Reading
path.read()
Writing
path.write("Hello World!")
Glob
let paths = Path.glob("*.swift")
Contact
Kyle Fuller
License
PathKit is licensed under the BSD License.