Skip to content

Move a file - Even works across devices

License

Notifications You must be signed in to change notification settings

sindresorhus/move-file

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

26 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

move-file

Move a file

The built-in fs.rename() is just a JavaScript wrapper for the C rename(2) function, which doesn't support moving files across partitions or devices. This module is what you would have expected fs.rename() to be.

Highlights

  • Promise API.
  • Supports moving a file across partitions and devices.
  • Optionally prevent overwriting an existing file.
  • Creates non-existent destination directories for you.

Install

npm install move-file

Usage

import {moveFile} from 'move-file';

await moveFile('source/unicorn.png', 'destination/unicorn.png');
console.log('The file has been moved');

API

moveFile(sourcePath, destinationPath, options?)

Returns a Promise that resolves when the file has been moved.

moveFileSync(sourcePath, destinationPath, options?)

sourcePath

Type: string

The file you want to move.

destinationPath

Type: string

Where you want the file moved.

options

Type: object

See Options.

renameFile(source, destination, options?)

Returns a Promise that resolves when the file has been renamed. source and destination must be in the same directory.

renameFileSync(source, destination, options?)

source

Type: string

The file you want to rename.

destination

Type: string

What you want to rename the file to.

options

Type: object

See Options.

Options

overwrite

Type: boolean
Default: true

Overwrite existing destination file.

cwd

Type: string
Default: process.cwd()

The working directory to find source files.

The source and destination path are relative to this.

directoryMode

Type: number
Default: 0o777

Permissions for created directories.

It has no effect on Windows.

Related