Command-Line Interface
bcp.exe — a headless, scriptable copy/move CLI with real exit codes that Task Scheduler and scripts can depend on.
Grammar
Brutal Copy ships a headless command-line tool, bcp.exe, alongside the GUI. It is verb-based:
bcp copy <source>... --dest <dir> [--dest <dir2>...] [options]
bcp move <source>... --dest <dir> [options]Unlike the Explorer right-click verbs (which forward to the GUI and return immediately), bcp runs the job in-process and synchronously — its exit code reflects the real outcome, so scripts and Task Scheduler can branch on success or failure.
Verbs
| Verb | Purpose |
|---|---|
copy | Copy files and folders to one or more destinations |
move | Move files and folders (copy, then remove the source) |
license | Show the current license status and exit |
version | Show version information |
help | Show usage |
Options
| Option | Purpose |
|---|---|
--dest, -d | Destination directory (repeat for multi-destination) |
--hash <algo> | Verify with blake3, crc32, crc32c, md5, sha1, sha256, sha384, or sha512 |
--conflict <mode> | overwrite (default), newer, skip, or rename |
--verify | Re-read micro files on disk after writing |
--vss | Copy locked/in-use files via shadow copy (one UAC prompt only if a locked file is hit) |
--threads <n> | Override the adaptive worker count |
--system-friendly | Throttle in-flight writes to keep the machine responsive |
--min-size / --max-size | Only copy files within a size range (e.g. 1m, 2g) |
--newer-than <date|7d> | Only copy files modified since a date or relative window |
--quiet, -q, --no-progress | Suppress per-file progress; print only the final result line |
--log <path> | Write a summary and error list to a file |
Exit Codes
bcp returns a meaningful exit code so a script can react to the result:
| Code | Meaning |
|---|---|
0 | Success |
1 | Completed with errors |
2 | Bad usage |
3 | Fatal error |
4 | Insufficient destination space |
5 | Not licensed (activate in the app) |
130 | Cancelled (Ctrl+C) |
Examples
bcp copy C:\Photos --dest D:\Backup --hash blake3 --threads 8
bcp copy C:\Work --dest D:\Backup --dest E:\Backup2
bcp move "C:\Old Data" --dest "D:\Archive" --quiet
bcp copy C:\Logs --dest D:\Keep --newer-than 7d --min-size 1m
bcp copy C:\Share --dest D:\Mirror --vss --log run.txt
bcp license