Wondering what’s next for npm?Check out our public roadmap! »

    fs-utils

    0.7.0 • Public • Published

    fs-utils NPM version

    fs extras and utilities to extend the node.js file system module. Used in Assemble and many other projects.

    Install

    Install with npm

    $ npm i fs-utils --save

    Usage

    var fs = require('fs-utils');

    API

    .stripCR

    Strip carriage returns from a string.

    Params

    • str {String}
    • returns {String}

    .stripBOM

    Strip byte order marks from a string.

    See BOM

    Params

    • str {String}
    • returns {String}

    .slashify

    Normalize all slashes to forward slashes.

    Params

    • str {String}
    • stripTrailing {Boolean}: False by default.
    • returns {String}

    .isEmptyFile

    Return true if the file exists and is empty.

    Params

    • filepath {String}
    • returns {Boolean}

    .isEmptyDir

    Return true if the file exists and is empty.

    Params

    • filepath {String}
    • returns {Boolean}

    .isDir

    Return true if the filepath is a directory.

    Params

    • filepath {String}
    • returns {Boolean}

    .isLink

    True if the filepath is a symbolic link.

    Params

    • filepath {String}
    • returns {Boolean}

    .glob

    Glob files using [matched]. Or glob files synchronously with glob.sync.

    Params

    • patterns {String|Array}
    • returns {options}

    .readFileSync

    Read a file synchronously. Also strips any byte order marks.

    Params

    • filepath {String}
    • returns {String}

    readFile

    Read a file asynchronously.

    Params

    • filepath {String}
    • options {Object}
    • normalize {Boolean}: Strip carriage returns and BOM.
    • encoding {String}: Default is utf8
    • callback {Function}

    .readYAML

    Read a YAML file asynchronously and parse its contents as JSON.

    Params

    • filepath {String}
    • returns {Object} options
    • returns {Function} cb: Callback function

    .readYAMLSync

    Read a YAML file synchronously and parse its contents as JSON

    Params

    • filepath {String}
    • returns {Object}

    .readJSON

    Read JSON file asynchronously and parse contents as JSON

    Params

    • filepath {String}
    • callback {Function}
    • returns {Object}

    .readJSONSync

    Read a file synchronously and parse contents as JSON. marks.

    Params

    • filepath {String}
    • returns {Object}

    .readData

    Read JSON or YAML utils.async. Determins the reader automatically based on file extension.

    Params

    • filepath {String}
    • options {Object}
    • callback {Function}
    • returns {String}

    .readDataSync

    Read JSON or utils.YAML. Determins the reader automatically based on file extension.

    Params

    • filepath {String}
    • options {Object}
    • returns {String}

    .writeFile

    Asynchronously write a file to disk.

    Params

    • dest {String}
    • content {String}
    • callback {Function}

    .writeFileSync

    Synchronously write files to disk, creating any intermediary directories if they don't exist.

    Params

    • dest {String}
    • str {String}
    • options {Options}

    .writeJSONSync

    Synchronously write JSON to disk, creating any intermediary directories if they don't exist.

    Params

    • dest {String}
    • str {String}
    • options {Options}

    .writeJSON

    Asynchronously write files to disk, creating any intermediary directories if they don't exist.

    Params

    • dest {String}
    • str {String}
    • options {Options}

    .writeYAMLSync

    Synchronously write YAML to disk, creating any intermediary directories if they don't exist.

    Params

    • dest {String}
    • str {String}
    • options {Options}

    .writeYAML

    Aynchronously write YAML to disk, creating any intermediary directories if they don't exist.

    Params

    • dest {String}
    • str {String}
    • options {Options}

    .writeDataSync

    Synchronously write JSON or YAML to disk, creating any intermediary directories if they don't exist. Data type is determined by the dest file extension.

    Params

    • dest {String}
    • str {String}
    • options {Options}

    Example

    writeDataSync('foo.yml', {foo: "bar"});

    .writeData

    Asynchronously write JSON or YAML to disk, creating any intermediary directories if they don't exist. Data type is determined by the dest file extension.

    Params

    • dest {String}
    • data {String}
    • options {Options}
    • cb {Function}: Callback function

    Example

    writeData('foo.yml', {foo: "bar"});

    .copyFileSync

    Copy files synchronously;

    Params

    • src {String}
    • dest {String}

    .rmdir

    Asynchronously remove dirs and child dirs that exist.

    Params

    • dir {String}
    • {Function}: `cb
    • returns {Function}

    .del

    Delete folders and files recursively. Pass a callback as the last argument to use utils.async.

    Params

    • patterns {String}: Glob patterns to use.
    • options {Object}: Options for matched.
    • cb {Function}

    .ext

    Return the file extension.

    Params

    • filepath {String}
    • returns {String}

    .dirname

    Directory path excluding filename.

    Params

    • filepath {String}
    • returns {String}

    .last

    The last n segments of a filepath. If a number isn't passed for n, the last segment is returned.

    Params

    • filepath {String}
    • returns {String}

    .first

    The first n segments of a filepath. If a number isn't passed for n, the first segment is returned.

    Params

    • filepath {String}
    • returns {String}

    .lastChar

    Returns the last character in filepath

    Params

    • filepath {String}
    • returns {String}

    Example

    lastChar('foo/bar/baz/');
    //=> '/'
    

    .addSlash

    Add a trailing slash to the filepath.

    Note, this does not consult the file system to check if the filepath is file or a directory.

    Params

    • filepath {String}
    • returns {String}

    .normalizePath

    Normalize a filepath and remove trailing slashes.

    Params

    • filepath {String}
    • returns {String}

    .relative

    Resolve the relative path from a to `b.

    Params

    • filepath {String}
    • returns {String}

    .isAbsolute

    Return true if the path is absolute.

    Params

    • {[type]}: filepath
    • returns {Boolean}

    .equivalent

    Return true if path a is the same as path `b.

    Params

    • filepath {String}
    • a {String}
    • b {String}
    • returns {Boolean}

    .doesPathContain

    True if descendant path(s) contained within ancestor path. Note: does not test if paths actually exist.

    Sourced from [Grunt].

    Params

    • ancestor {String}: The starting path.
    • returns {Boolean}

    .isPathCwd

    True if a filepath is the CWD.

    Sourced from [Grunt].

    Params

    • filepath {String}
    • returns {Boolean}

    .isPathInCwd

    True if a filepath is contained within the CWD.

    Params

    • filepath {String}
    • returns {Boolean}

    Related projects

    Running tests

    Install dev dependencies:

    $ npm i -d && npm test

    Contributing

    Pull requests and stars are always welcome. For bugs and feature requests, please create an issue.

    Author

    Jon Schlinkert

    License

    Copyright © 2015 Jon Schlinkert Released under the MIT license.


    This file was generated by verb-cli on November 17, 2015.

    Install

    npm i fs-utils

    DownloadsWeekly Downloads

    11,550

    Version

    0.7.0

    License

    MIT

    Last publish

    Collaborators

    • avatar
    • avatar