FastCopy Command Line Examples

Copy folder and create the folder at the destination (Destination Folder did not exist):

"C:\Program Files\FastCopy\FastCopy.exe" /cmd=diff /exclude="Thumbs.db;.DS_Store;Desktop.ini;DfsrPrivate\" /filelog="C:\Program Files\FastCopy\FastCopy.log" /speed=8 /error_stop=FALSE /force_close /acl=FALSE /verify=TRUE "C:\Folder1" /to="C:\Folder2"

Synchronize the folder’s contents (both folders already exist):

"C:\Program Files\FastCopy\FastCopy.exe" /cmd=sync /exclude="Thumbs.db;.DS_Store;Desktop.ini;DfsrPrivate\" /filelog="C:\Program Files\FastCopy\FastCopy.log" /speed=8 /error_stop=FALSE /force_close /acl=FALSE /verify=TRUE "C:\Folder1\*" /to="C:\Folder2\"

Teracopy is not supported on Windows Servers, and RichCopy is buggy, therefore the only fast, reliable, and free copy tool in a Windows environment is FastCopy.

Make sure and use the verify option, and do not use the Move command.  I have seen zero byte files occur when verify is not used or the move command is used.

Windows Explorer is slow and haults on errors, xcopy can’t handle terabytes of data, xxcopy can’t handle terabytes of data, Robocopy can’t handle terabytes of data, and copy command cannot handle terabytes of data. The only other free alternative is to use Linux cp command or Cygwin cp command.

FastCopy Options:

/cmd=(noexist_only|diff|update|sync|force_copy|move|delete) … Specify operation mode.
(By default, diff mode is used. If delete mode is specified, then “/to=” option isn’t used.)

noexist_only Diff (No Overwrite)
diff Diff (Size/date) Create or Overwrite if newer, no delete of files
update Diff (update)
force_copy Copy (Overwrite)
sync Sync (Size/date) deletes files in “To” folder if missing from the “from” folder, otherwise creates and overwrites new/updated files
move Move (Overwrite) deletes the files in the “from” folder when finished
delete Delete

/auto_close … Close automatically after execution is finished with no errors.

/force_close … Close automatically and forcedly after execution is finished.

/open_window … Don’t stored in the task tray.

/estimate … Estimate complete time.

/no_exec … Don’t start to execute.

/no_confirm_del … Don’t confirm before deleting.

/no_confirm_stop … Don’t Show error dialog, Even if critical errors occurred.

/error_stop … Show error dialog (and operation is interrupted), if an error occurred. (to disable, /error_stop=FALSE)

/bufsize=N(MB) … Specify the size(MB) of the main buffer for Read/Write opration.

/log … Write the operation/errors information to the logfile(fastcopy.log). (to disable, /log=FALSE)

/logfile=filename … Specify the filename of logfile.

/filelog … Write to the filelog(detail of copy/delete files). It is stored TIMESTAMP.log in FastCopy/Log directory. If using verify mode, write digest data(default:md5) as additional data. (To specify filelogname, /filelog=filename)

/utf8 … Write to the logfile using UTF-8 encoding (supports Unicode).

/skip_empty_dir … Skip to create empty directories when /include or /exclude option is used. (to disable, /log=FALSE)

/job=job_name … Specify the job that is already registered.

/force_start … Start at once without waiting for the finish of other FastCopy executing.

/disk_mode=(auto|same|diff) … Specify Auto/Same/Diff HDD mode. (default: Auto)

/speed=(full|autoslow|9-1(90%-10%)|suspend) … Specify speed control level.

/srcfile=”files.txt” … Specify source files by textfile. User is able to describe 1 filename per line. (Attention: If a lot of files are specified, it will take many times to display/refresh Source combobox.)

/srcfile_w=”files.txt” … same as “/srcfile=”, except describing by UNICODE.

/include=”…” … Specify include filter. (details)

/exclude=”…” … Specify exclude filter. (details)

/from_date=”…” … Specify oldest timestamp filter. (details)

/to_date=”…” … Specify newest timestamp filter. (details)

/min_size=”…” … Specify minimum size filter. (details)

/max_size=”…” … Specify maximum size filter. (details)

/wipe_del … Rename filename and wipe(overwrite Random data) before deleting.

/acl … Copy ACL (only NTFS) (to disable, /acl=FALSE)

/stream … Copy Alternate Stream (only NTFS) (to disable, /stream=FALSE)

/reparse … Copy junction/mountpoint/symlink itself(to disable, /reparse=FALSE) (details)

/verify … Verify written files data by MD5(or SHA-1) (to disable, /verify=FALSE) (details)

/linkdest … Reproduce hardlink as much as possible. (details)

/recreate … Change updating behavior “overwrite the target” to “delete and recreate the target”. (If /linkdest option is enabled, this option is enabled by default.) If you want always to enable, write [main] recreate=1 in fastcopy.ini.

/postproc=actoin_name … Specify post-process action name (to disable, /postproc=FALSE)



9 thoughts on “FastCopy Command Line Examples

  1. Preston Post author

    I came across an issue with FastCopy and Windows DFS and replication. Fastcopy copied files would end up being 0kb in size for random files. However copying to a non DFS share worked fine. I ended up using some scripting to delete the 0kb files and xcopy to finish copying the missing files.

    1. Preston Post author

      Once I added /verify=TRUE to the batch command, under the main menu -> Option -> Main Settings -> Copy/Move Options -> Uncheck “Copy Junction/Symlink as Junction/Symlink (not target)”, and main menu -> Option -> Main Settings ->Log Settings -> check mark “Write ACL Errors to Error Log” and “Write AltStream errors to Error Log”, then the 0 kb files stopped occurring.

  2. Preston Post author

    Another alternative is to script looping through each subfolder and executing xcopy for each sub folder’s contents. This can allow xcopy to work with terabytes of data if the data is separated into multiple folders.

  3. Preston Post author

    It will copy all of the subfolders if you specify the main parent folder and “\*” after. If you have several folders in different places, than make a batch file. If you want them all to run at the same time, then check mark “Don’t wait for other running FastCopy to finish” in Option -> “Main Settings” -> “Misc Settings”. Click on Ok.

  4. Preston Post author

    You can make a batch file and specify each folder per command in the batch file or use the parent folder and exclude name filter. End the folder name with a backslash and separate each exclude folder name with semicolon. Any/all folders that match the excluded folder name at any depth will be excluded.

  5. Pingback: Restore Files After a Ransomware Infection | Question Driven

  6. Michael Harrison

    how to use the command line option /job=jobname? Every time I try to run a registered job, it tells me “specified job cannot be found.” Yet in the menu, it is clearly there. When I register the job, were does it get saved?

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.

%d bloggers like this: