cpy-cli
v7.0.0
Published
Copy files
Downloads
1,599,667
Maintainers
Readme
cpy-cli
Copy files
Why
- Fast by using streams.
- Resilient by using graceful-fs.
- User-friendly by accepting globs and creating non-existent destination directories.
- User-friendly error messages.
Install
npm install --global cpy-cliUsage
$ cpy --help
Usage
$ cpy <source …> <destination>
Options
--no-overwrite Don't overwrite the destination
--ignore-existing Skip files that already exist at the destination
--update Only overwrite if the source is newer, or if sizes differ with the same modification time
--cwd=<dir> Working directory for files
--base=<mode> Base mode for destination paths: cwd or pattern
--rename=<filename> Rename all <source> filenames to <filename>. Supports string templates.
--dot Allow patterns to match entries that begin with a period (.)
--flat Flatten directory structure. All copied files will be put in the same directory.
--dry-run List files that would be copied without actually copying
--concurrency Number of files being copied concurrently
<source> can contain globs if quoted
Errors if no files match, similar to cp.
--update is ignored when --no-overwrite or --ignore-existing is set.
If the source is a single file and the destination is not an existing directory, it will be treated as a file-to-file copy (like cp).
Examples
Copy all .png files in src folder into dist except src/goat.png
$ cpy 'src/*.png' '!src/goat.png' dist
Copy all files inside src folder into dist and preserve path structure
$ cpy . '../dist/' --cwd=src
Copy a single file to a specific filename
$ cpy .env.development .env
Copy all .png files in the src folder to dist and prefix the image filenames
$ cpy 'src/*.png' dist --cwd=src --rename=hi-{{basename}}
Copy only when the source is newer, or if sizes differ with the same modification time
$ cpy src dist --updateRelated
- cpy - API for this package
