There are two sets of tools with Windows, the command line tools which are
- Robocopy
- XCopy
- copy
- move
And the GUI tools, which use the Windows File Engine. This can perform
- Copy
- Move
- Cut and Paste
Comparison with Command Line Tools
This table compares the abilities and features of the standard Windows 10 command line tools with CrazyCopy.
Yes = Supports the feature No = Does not Support the feature at all
Limited = Supports some parts of the feature (seek details from Windows tool help)
Yes by default = Supports the feature without specifying additional options. Also supports other behaviour, if other options used
| Feature | copy | xcopy | robocopy | CrazyCopy |
|---|---|---|---|---|
| Copy one file | Yes | Yes | Yes | Yes |
| Copy multiple files | Yes | Yes | Yes | Yes |
| Copy full directory trees | No | Yes | Yes | Yes |
| Copy empty directories | No | Yes, with /E | Yes, with /E | Yes by default |
| Safe Move Copy, Validate Matching Counts, then Remove Source Folder | No | No | No | Yes |
| Preserve basic file attributes | Limited | Yes | Yes | Yes |
| Preserve timestamps | Limited | Yes | Yes | Yes |
| Respects destination permission inheritance | Yes | Yes by default | Yes by default | Yes by default |
| Copy hidden and system files | Limited | Yes, with /H | Yes | Yes |
| Retry failed copies | No | Limited | Yes | Yes |
| Detailed logging | Minimal | Minimal | Extensive | Yes individual File and Folder Granularity |
| Multithreaded copying | No | No | Yes, with /MT | Yes by default |
| User-selectable thread count | No | No | Yes | Yes |
| Copy symbolic links as links | No | Limited/unreliable | Configurable | Yes by default |
| Handle junctions safely | No | Limited | Yes, with options such as /XJ | Yes by default |
| Long-path support | Poor | Poor | Better | Yes |
| Destination Verification CountingShows files, folders, reparse points, junctions | No | No | No | Yes |
| Suitable for robust folder copying | No | Limited | Yes | Yes |
| Prevents Drive Filling with Infinite Nesting Folders Copy parent folder into child folder | No | Yes (can be overriden) | No | Yes(Can be tricked with SUBST) |
⚠ WARNING — Recursive Folder Copying
Here are some simple examples to demonstrate the dangers of recursive folder copying. Do not run these commands as they will fill your storage/drive if left running too long !
Xcopy
E:\>xcopy "H:\Temp" "H:\Temp\RecursiveCopyTest\Child" /E
Cannot perform a cyclic copy
0 File(s) copied
Robocopy
E:\>robocopy "H:\Temp" "H:\Temp\RecursiveCopyTest\Child" /E
-------------------------------------------------------------------
ROBOCOPY :: Robust File Copy for Windows
-------------------------------------------------------------------
Started : August 4, 2026 1:11:41 PM
Source : H:\Temp\
Dest : H:\Temp\RecursiveCopyTest\Child\
Files : *.*
Options : *.* /S /E /DCOPY:DA /COPY:DAT /R:1000000 /W:30
-------------------------------------------------------------------
0 H:\Temp\
*EXTRA Dir -1 H:\Temp\RecursiveCopyTest\Child\Child\
*EXTRA File 21 New Text Document.txt
New Dir 0 H:\Temp\RecursiveCopyTest\
New Dir 1 H:\Temp\RecursiveCopyTest\Child\
100% New File 21 New Text Document.txt
New Dir 1 H:\Temp\RecursiveCopyTest\Child\Child\
100% New File 21 New Text Document.txt
New Dir 0 H:\Temp\RecursiveCopyTest\Child\RecursiveCopyTest\
New Dir 1 H:\Temp\RecursiveCopyTest\Child\RecursiveCopyTest\Child\
100% New File 21 New Text Document.txt
New Dir 1 H:\Temp\RecursiveCopyTest\Child\RecursiveCopyTest\Child\Child\
CrazyCopy
E:\>CrazyCopy.exe --headless "H:\Temp\RecursiveCopyTest"
"H:\Temp\RecursiveCopyTest\Child" copy false
Log Begun
ERROR: Path validation failed.
Destination Folder cannot be inside the Source Folder.
Note that Windows can sometimes prevent this type of behaviour (via the GUI)
RecursiveCopyTest
└── Child
└── RecursiveCopyTest
└── Child
└── RecursiveCopyTest
└── Child
└── …Ad infinitum
Comparison with Windows Engine GUI Tools
Comparing the Windows GUI tools, this table shows the different supported features
| General Features | Windows File Explorer | CrazyCopy |
| Graphical interface (GUI) | Yes | Yes |
| Command-line interface (CLI) | No dedicated copy CLI | Yes |
| Windows context-menu integration | Yes | Yes |
| Compact / mini interface | No dedicated mode | Yes |
| Copy individual files | Yes | No |
| Copy complete directory trees | Yes | Yes, default |
| Copy empty directories | Yes | Yes, default |
| Move files and directories | Yes | Yes |
| Copy Over (merge existing directories) | Yes | Yes |
| Safe Move: copy, verify counts, delete source | No equivalent mode | Yes |
| Destination verification counting | No | Yes |
| Separate file, folder and link counts | Limited | Yes |
| Preserve basic file attributes | Yes | Yes |
| Preserve timestamps | Yes | Yes |
| Respect destination permission inheritance | Normally | Yes, default |
| Copy hidden and system files | Yes | Yes |
| Multithreaded copying | Internal, not user-configurable | Yes, default |
| User-selectable thread count | No | Yes |
| Automatic thread selection | Internal | Yes |
| USB-aware thread limiting | Not user-configurable | Yes |
| Real-time progress reporting | Yes | Yes |
| Copy directory symbolic links as links | Varies | Yes, default |
| Recreate directory junctions | Not guaranteed | Yes, default |
| Copy Windows shortcuts | Yes | Yes |
| Junction as source folder | Varies | Yes |
| Junction as destination folder | Varies | Yes |
| Directory symlink as source folder | Varies | Yes |
| Directory symlink as destination folder | Varies | Yes |
| Shortcut as source folder | Shell resolves | Yes |
| Shortcut as destination folder | Shell resolves | Yes |
| Prevent ordinary destination-inside-source copying | Generally | Yes |
| Protection against SUBST path aliases | Not established | Not yet |
| Reject cloud placeholders in source | No general rejection | Yes |
| Long-path support | Varies | Yes |
| Retry failed copies | Limited | Yes |
| Detailed copy logging | No persistent detailed log | Yes |
| Individual file logging | No | Yes |
| Individual folder logging | No | Yes |
| Copy error reporting | Dialogs | Yes |

