copy-file

simply copy a file

Copy File License NPM version Dependency Status Build Status Coverage Status

Simply copy a file. If an error occurs after the destination file has been opened for writing, copy-file will attempt to remove the destination. Correctly copies symlinks.

Install

npm i @cloudcmd/copy-file

API

copyFile(src, dest [, streams])

  • src <string> - source filename to copy
  • dest <string>- destination filename of the copy operation
  • streams <array>- file processing streams (optional)
const copyFile = require('@cloudcmd/copy-file');

const ok = () => 'ok';
const error = (e) => e.message;

copyFile('./package.json', './package2.json')
    .then(ok)
    .catch(error)
    .then(console.log);

You can use preprocessing streams of copied file:

const copyFile = require('@cloudcmd/copy-file');

const zlib = require('zlib');
const gzip = zlib.createGzip();

const ok = () => 'ok';
const error = (e) => e.message;

copyFile('./package.json', './package2.json', [gzip])
    .then(ok)
    .catch(error)
    .then(console.log);

You can use copyFile with async-await:

const tryToCatch = require('try-to-catch');
const copyFile = require('@cloudcmd/copy-file');

(async () => {
    const [e] = await tryToCatch(copyFile, './package.json', './package2.json');
    
    if (!e)
        return;
    
    console.error(e.message);
})();

Related

License

MIT

Related Repositories

github-plus

github-plus

:rocket: Chrome extension to display size of each file, download link and copy file contents directly to clipboard ...

hdfs-file-slurper

hdfs-file-slurper

Utility to easily copy files into HDFS ...

cpx

cpx

A cli tool to watch and copy file globs. ...

EasyShell

EasyShell

EasyShell - This Eclipse plugin allows to open a shell window or file manager from the popup menu in the navigation tree or editor view. Additionally it is possible to run selected file in the shell, copy file or directory path or run user defined externa ...

hyperclick

hyperclick

This is a read-only copy of the hyperclick package found in https://github.com/facebook/nuclide/tree/master/pkg/. Please file issues and pull requests against the original instead of this copy. ...