Swiftpack.co - Package - kylef/PathKit

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

  • https://fuller.li
  • https://twitter.com/kylefuller

License

PathKit is licensed under the BSD License.

Github

link
Stars: 927
Help us keep the lights on

Dependencies

Releases

0.9.1 - Mar 24, 2018

Bug Fixes

0.9.0 - Dec 23, 2017

Enhancements

  • Support for Swift 4.

Bug Fixes

  • Appending to (.) slice started with (..) will return correct path.
    Antondomashnev

0.8.0 - Feb 18, 2017

Enhancements

  • New string (path.string) and URL (path.url) accessors on a path.
    David Jennes
  • Additional method for creating an iterator with options.
    #25 David Jennes
  • Abbreviate is now supported on Linux.
    Ben Snider

Bug Fixes

  • Enumerating a path will now return an Optional.none when a directory does not exist.
    Leon Breedt

0.7.0 - Sep 13, 2016

Adds support for Swift 3.0

0.6.1 - Dec 8, 2015

Adds Linux support.