mktmpdir

mktmpdir creates a temporary directory

mktmpdir

mktmpdir creates a temporary directory, ported from Ruby's Dir.mktmpdir.

var mktmpdir = require('mktmpdir');
 
mktmpdir(function(errdirdone) {
  if (err) throw err;
  // use the directory... 
  fs.writeFile(dir + '/foo', 'hello, World', done);
}, function(errdir) {
  // after the directory is removed. 
});
$ npm install mktmpdir

The prefix and suffix of the name of the directory is specified by prefixSuffix. The directory is created under tmpdir or os.tmpdir() with 0700 permission.

mktmpdir(function(errdir) {
  // dir is ".../d..." 
});
 
mktmpdir('foo', function(errdir) {
  // dir is ".../foo..." 
});
 
mktmpdir(['foo', 'bar'], function(errdir) {
  // dir is ".../foo...bar" 
});
 
mktmpdir(null, '/var/tmp', function(errdir) {
  // dir is "/var/tmp/d..." 
});
 
// If a callback is invoked, the path of the directory and its contents are removed. 
mktmpdir(function(errdirdone) {
  if (err) throw err;
  fs.open(dir + '/foo', 'w', function(errfd) {
    done(err);
  });
}, function(err) {
  // the directory has been removed. 
});
 
// If a callback is not invoked, `mktmpdir` doesn't remove the directory. 
mktmpdir(function(errdir) {
  if (err) throw err;
  fs.open(dir + '/foo', 'w', function(errfd) {
    // remove the directory. 
    exec('rm -rf ' + dir);
  });
});

MIT