TOC

  • fs模块的扩展,提供了更多便利的 API,并继承了 1、复制文件
    copy(src, dest, [options], callback)

    示例:

    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、创建文件、目录

    ensureFile(file, callback)
    createFile(file, callback)
    createFileSync(file),
    ensureFileSync(file)
    ensureDir(dir, callback)
    ensureDirSync(dir)

    示例:

    var fs = require('fs-extra');
    
    var file = '/tmp/this/path/does/not/exist/file.txt'
    fs.ensureFile(file, function(err) {
      console.log(err) // => null 
      //file has now been created, including the directory it is to be placed in 
    });
    
    var dir = '/tmp/this/path/does/not/exist'
    fs.ensureDir(dir, function(err) {
      console.log(err) // => null 
      //dir has now been created, including the directory it is to be placed in 
    });

    3、移动文件、目录

    move(src, dest, [options], callback)

    示例:

    var fs = require('fs-extra')
    
    fs.move('/tmp/somefile', '/tmp/does/not/exist/yet/somefile', function(err) {
      if (err) return console.error(err)
      console.log("success!")
    })

    4、写入文件

    outputFile(file, data, callback)

    示例:

    var fs = require('fs-extra')
    var file = '/tmp/this/path/does/not/exist/file.txt'
    
    fs.outputFile(file, 'hello!', function(err) {
      console.log(err) // => null 
    
      fs.readFile(file, 'utf8', function(err, data) {
        console.log(data) // => hello! 
      })
    })

    5、删除文件、目录

    remove(dir, callback)

    示例:

    var fs = require('fs-extra')
    
    fs.remove('/tmp/myfile', function(err) {
      if (err) return console.error(err)
    
      console.log("success!")
    })
    
    fs.removeSync('/home/jprichardson')