Node常用模块之fs-extra

作者: wangxingkang | 来源:发表于2016-10-24 22:07 被阅读4987次

    fs-extra -- 文件操作相关工具库


    项目地址:

    github(fs-extra)


    fs-extra模块是系统fs模块的扩展,提供了更多便利的 API,并继承了fs模块的 API

    安装:

    npm install --save-dev fs-extra

    使用:

    var fse = require('fs-extra')


    API:

    1. copy 复制文件

    copy(src, dest, [option],callback)

    option:

    • clobber (boolean): 覆盖现有的文件或目录,默认true
    • dereference (boolean): dereference symlinks, default is false
    • preserveTimestamps (boolean): 最后修改和访问时间和原始的源文件一致,默认为false
    • filter: 函数或正则表达式过滤复制文件,返回true包含,否则排除

    同步:
    copySync()

    示例:

    var fs = require('fs-extra');
    fs.copy('/tmp/myfile', '/tmp/mynewfile', function (err) {
       if (err) return console.error(err); 
       console.log("success!")
    }) //拷贝文件
    fs.copy('/tmp/mydir', '/tmp/mynewdir', function (err) {
       if (err) return console.error(err) 
       console.log('success!')
    }) //拷贝目录
    

    2. emptyDir 清空目录

    确保一个目录是空的。如果目录非空删除目录内容。如果目录不存在,就创建一个。目录本身并不是删除。

    异步:
    emptydir()
    同步:
    emptyDirSync(), emptydirSync()
    示例:

    var fs = require('fs-extra')
    //假设这个目录下有很多文件和文件夹
    fs.emptyDir('/tmp/some/dir', function (err) {
      if (!err) console.log('success!')
    })
    

    3. ensureFile 创建文件

    确保文件存在。如果被请求的文件的目录不存在,创建这些目录。如果文件已经存在,它不修改。
    异步:
    createFile()
    同步:
    createFileSync(),ensureFileSync()
    示例:

    var fs = require('fs-extra');
    var file = '/tmp/this/path/does/not/exist/file.txt';
    fs.ensureFile(file, function (err) { 
       console.log(err) ;
    })
    

    4. ensureDir 创建目录

    确保目录的存在。如果目录结构不存在,就创建一个。
    **同步: **
    ensureDirSync()
    示例:

    var fs = require('fs-extra');
    var dir = '/tmp/this/path/does/not/exist';
    fs.ensureDir(dir, function (err) {
       console.log(err);
    })
    

    相关文章

      网友评论

        本文标题:Node常用模块之fs-extra

        本文链接:https://www.haomeiwen.com/subject/wamkuttx.html