Skip to content

kylef/PathKit

Folders and files

NameName
Last commit message
Last commit date

Latest commit

2fcd461 · Oct 23, 2021
Oct 23, 2021
Sep 22, 2021
Sep 22, 2021
Sep 10, 2018
Mar 28, 2019
Sep 22, 2021
Sep 10, 2014
May 16, 2021
Sep 22, 2021
Sep 10, 2018

Repository files navigation

PathKit

Build Status

Effortless path operations in Swift.

Usage

let path = Path("/usr/bin/swift")

Joining paths

let path = Path("/usr/bin") + 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.normalize()

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.