Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

70 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

NPM
GitHub tag Build Status install size GitHub issues

Why?

I did this: npm i mv,
then I saw this: + mv@2.1.1 added 15 packages,
then I said no.

It first tries fs.rename(), then falls back on fs.copyFile() and fs.unlink().

Usage:

const mvdir = require('mvdir');

await mvdir('source/file.js', 'dest/file.js'); // move file.
await mvdir('source/file.js', 'dest/');        // move file. (same as above if dest directory already exists)
await mvdir('source', 'dest');                 // move directory.
await mvdir('source', 'a/b/c/dest');           // creating necessary dirs.
await mvdir('C:\\file.js', 'D:\\file.js');     // move across drives/partitions.

// returns undefined if successful, or an error object:
const err = await mvdir('source/file.js', 'dest/file.js');
if (!err) console.log('done.');

mvdir('source/file.js', 'dest/file.js').then(err => {
  if (!err) console.log('done.');
});

Copying:

await mvdir('file1.js', 'file2.js', { copy: true });
await mvdir('dir1', 'dir2', { copy: true });

Don't overwrite:

await mvdir('file1.js', 'file2.js', { overwrite: false }); // error if file2.js already exists.
await mvdir('dir1', 'dir2', { overwrite: false });         // error if dir2     already exists.

Don't log errors:

await mvdir('dir1', 'dir2', { log: false });

About

Move or copy files and directories. (async, recursive, across devices, copy & delete fallback, minimalistic with 0 dependencies)

Resources

Stars

7 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages