|Diff HDD||Reading and writing are processed respectively in parallel by separate threads.|
|Same HDD||Reading is processed until the big buffer fills. When the big buffer is filled, writing is started and processed in bulk.|
|1. The last character of DestDir is '\'||
Copy Source directory, including itself, to DestDir.|
|2. The last character of DestDir is NOT '\'||
Copy Source directory's contents to DestDir.|
However, if multiple directories are specified in Source, the behavior will be changed to 1.
(mini tips) If you want to copy Source directory's contents to the DestDir that is specified drive root, please append "*" to Source directory.
For example, if Source is "C:\Folder1\*" and DestDir "D:\", the result is D:\(Contents_of_Folder1)
|Diff (No Overwrite)||Copy if the same filename does not exist in destination.|
|Diff (Size/date)||Copy if size or date is different, or if it does not exist (in default)|
|Diff (Newer)||Copy if source file timestamp is newer or does not exist.|
|Copy (Overwrite)||Always copy/overwrite all.|
|Sync (Size/date)||Copy if size or date is different, or it does not exist.|
In addition, delete all destination files/directories that do not exist in Source.
|Move (Overwrite)||Always copy/overwrite all and delete all copied source files.|
(To change select "Move (Overwrite all)" → "Move (Size/date)" in the settings dialog.)
|Delete||Delete all files/dirs forcibly.|
|Execute||The copy operation is executed. While executing, the button changes to "Cancel..." button. |
- While pushing CTRL, the confirmation dialog is displayed.
|Listing||The files and directories list that will be copied and deleted are displayed. '+' means copying, and '-' means deleting.|
- While pushing CTRL (button label "listing" → "listing+v"), compare the file pairs that will be skipped (except skipping by filter).
- While pushing Shift (and if filelog is enabled), write listing contents to filelog. (If FileDate/FileSize option in log settings is enabled, this information will be shown/written)
|Buffer size||Show the size(MB) of the main buffer for Read/Write operations. If it is clicked, setting dialog will be opened.|
|Speed Control||Specify "Full Speed", "Auto Slow"(*1), "90%"~"10%", "Suspend".|
If you feel it is hogging resources, it is recommended to set to "Auto Slow" (If mouse movement is detected, or active window is changed (and FastCopy window is not in the foreground), it will be slowed down).
If "Full Speed" is not selected, low process priority class is set.
(This setting is not saved by job manage)
|NonStop||Don't interrupt even if errors occur by Read/Write/Delete, and keep processing as much as possible. |
(However, errors are displayed in the main window, and recorded in the error log.)
Verify written files data by xxHash (MD5/SHA-1/SHA-256). |
(If you want to use MD5/SHA-1/SHA-256, it can be selected in Copy/Move Options of settings.)
Action detail: Read(Src) → xxHash(Src) → Write(Dst) → Read(Dst) → xxHash(Dst) → Compare xxHash(Src/Dst) (All actions are processed in parallel as much as possible)
if verify error occurs, hash values of src/dest are shown, and it is renamed dest-filename with .fc_verify_err.
(Depending on the setting, it can be removed it instead of renaming)
|Estimate||Display the estimated complete time. This will make FastCopy investigate files/dirs to be copied, before starting.|
|Start at once||Start at once without waiting for other FastCopy instances executing to finish. (This button does not show when another FastCopy is not copying.) (parallel running)|
|ACL||Copy Access Control List (ACL). (Only applicable to NTFS)|
(It is recommended to use with Administrative privilege)
In addition, Extended Attribute(EA) will also be copied.
|Alt Stream||Copy Alternate Stream. (Only applicable to NTFS)|
|Wipe & Delete (prevent deleted files reviving)||Rename filename and Overwrite random data before deleting. Alternate stream is not overwritten. If NSA method is checked in setting dialog, Overwriting Random data process runs twice, and overwriting NULL data process runs once.|
|Include||Only files or directories that match the specified string (UNIX wildcard format is allowed) will be copied.|
Include filter strings can be specified (UNIX wildcard format). (Note)
If you want to specify two or more strings, please use semicolon as separator.
If you want to specify directories, please add '\' to the end of directory name.
(For example: *.txt; My Folder [0-9]\)
ver3.0 or later, relative path filter is available.
|Exclude||Don't copy files/directories that match the specified strings.|
|The following filters are enabled when "Option" → "Show Extended filter" is checked.|
|FromDate||Don't copy files with timestamps older than a specified date(format).|
This can be specified by not only absolute format ("20090322" or "2016/09/26 12:30:56") but also by relative format (10 days before ... "-10D").
|ToDate||Don't copy files with timestamps newer than this specified date.|
|MinSize||Don't copy the files with sizes that are smaller than the specified size.|
High number can be abbreviated using K/M/G/T character (Kilo/Mega/Giga/Tera).
|MaxSize||Don't copy the files with sizes bigger than the specified size.|
|Relative path filter||
If the first character of Include/Exclude string items is not '\', it will be Relative path filter. This mode is tail matching policy.|
|Forward match filter||
If the start character of Include/Exclude string items is '\', it will be Forward match filter. This mode is head → tail matching policy.|
For example, if Source is C:\aa\, and you want to exclude C:\aa\bb\cc\, Forward match filter is \bb\cc\.
Remove Source (C:\aa\) from the path you want to exclude (C:\aa\bb\cc\) and add \ at the beginning to indicate a forward match.
|Absolute path filter||
If the first character of Inlcude/Exclude starts with a drive letter (for example, C:\) or a UNC path (for example,\ \server \volume\), it is an absolute path specification.|
The absolute path must include the source path.
Internally, it is converted to a forward match specification. (The absolute path minus the following "Start point of filter check" is registered as a prefix match)
Start point of filter check
If Source is either C:\src\, C:\src\file.txt or C:\src\dir*, the start point(beginning) of the filter check will be C:\src\|
|*||Zero or more arbitrary characters|
|?||One arbitrary character|
|[abc]||One character in "abc"|
|[!abc]||One character except "abc".
'^' can also be used instead of '!'.
|[a-z]||One character in "abc...xyz"|
|\||'\' as Start character means Forward match filter. The middle of '\' is separator of path items. In addition, the end of '\' means "This is a filter item for directory". However, '\' in character class(), it means escape character.|
ex) "20090322" or "2016/09/26 12:30:56"
|Relative||Specify "+|- number W|D|h|m|s".
W|D|h|m|s means Weeks/Days/hours/minutes/seconds.
ex) "-12h" (This is case sensitive.)
|Diff/Copy||Copy Junction/Symlink itself.|
If you want to change the copy Junction/Symlnk's target(not Junction/Symlnk itself), it can be changed in the options settings
|Move||Always move Junction/Symlink itself.|
|Delete||Always delete Junction/Symlink itself.|
|Open Log||Open FastCopy.log|
|Open LastFileLog||If it is checked Write to FileLog, open the last finished filelog.|
|FileLogHistory||If it is checked Write to FileLog, open filelog history.|
|Open FastCopy Dir||Open the user directory of FastCopy|
|Save as Init Pos||Save position as initial FastCopy window.|
|Save as Init Size||Save size as initial FastCopy window|
|Always &Top Most||Always display at the top most|
|Help||Show this help|
|Check Update||Access https://fastcopy.jp/fastcopy-update.dat and check to require to update.|
|Support Forum||Questions/Opinions about FastCopy|
|Latest Version||Open FastCopy WebPage|
|About FastCopy||Show Version and Copyright|
|Default parameters for Main Window||The detail is this.|
|Language||Change Language. (need to restart)|
|Main Buffer (MB)||Specify main buffer size for reading/writing.|
|I/O unit (MB)||Parallel Read/Write request unit size for OS.|
"I/O unit" * "OverLap I/O Num" is the (effective) Max I/O size for OS.
1MB I/O unit size is the best performance for many environments, especially if network drive is used.
(Buffer size must be at least twice the Max I/O Size)
|OverLap I/O Num||I/O performance(especially network drive) is improved by using overlapped ReadFile/WriteFile I/O.|
(If it is specified "1", it will not be used overlapped I/O)
|MinSectorSize is regarded as 4KB||If destination drive are 512B sector HDD that has mounted 4KB sector HDD, please check this.|
|OS Cache settings|
|Use OS buffer for reading||It does not use DirectI/O. OS is likely to be slow/heavy, it can not be recommended.|
|Use OS buffer for writing||It does not use DirectI/O, if the filesize is under the specified size(KB)|
The disadvantages are the same as for reading. It will be faster for only very small files that use Direct I/O because of less head seeking time.
|Enable Large fetch mode (Win7 or later only)||Enable FIND_FIRST_EX_LARGE_FETCH flag and improve directory fetch performance.|
|Manual settings of physical drive group|
|About||Specify same physical drive group.|
|Format||If C: and D: are the same physical HDD, and E: and F: are the same, please specify "CD,EF"|
If you use UNC path, you can assign the drive letter for UNC or specify set decision policy below.
|Physical drive group decision policy of network drive|
|Details||Network drives are in the same physical HDD(or SSD) or not|
This decision policy always uses UNC name even if it is specified as the drive letter that is a network drive (*2)
|Same UNC_share are same physical drive group.||If UNC name is \\Server1\vol1\, \\Server1\vol1\ is the same physical HDD group, and \\Server1\vol2\ is not the same.|
|Same UNC_server are same physical drive group||If UNC name is \\Server1\vol1\, \\Server1\ is the same physical HDD group, and \\Server2\... is not the same.|
|All UNC_server are same physical drive group||All Network drives are the same HDD group|
|Max number of running FastCopy procs||If a lot of of instances of FastCopy are running in parallel, it requires much memory and CPU resource.|
If another FastCopy already running uses the same physical HDD, FastCopy will wait for the previous FastCopy to finish.
Manual settings physical drive group is available.
|Don't wait for another FastCopy running to finish||(Ignore the above settings) It always starts quickly.|
|Don't create empty directory, if "filter" is checked||After using the filter, if there isn't a file for copying, FastCopy won't make directories.|
|Use a modified name, if destdir is the same as src's parent||If DestDir is the same as src's parent directory, create a new name like "source(1)" and continue|
|Copy Junction/Symlink as Junction/Symlink(not target)||Copy Junction/Symlink as Junction/Symlink.|
If this check is off, it will be copy Junction/Symlink's target directory/file (*1)
(This option is ignored in "move" or "delete" mode)
Note: It requires administrator privilege to create Symlink
|Shared open Dest on Copy/Move (a little dangerous)||Opens the write destination non-exclusive. This increases the possibility that you can write to a file that is open by another process, but the file contents can be corrupted if another process writes to it.|
|Change "Move(Overwrite)" to "Move(Date/Size)"||If there is a file with the same date and size as the move destination, it is deleted from the move source without copying.|
|Move one by one||Normally it won't delete original files until the move files list is full.|
This option changes the behavior to "a file has copied, and remove copied source file"
|Move one by one (verify)||It is the same as "Move one by one" except "remove copied source files" → "remove verified source files"|
|Tolerance at the timestamp comparison||Specify tolerance timestamp difference as same date in Diff(Date/Size) or Diff(Newer).|
Normally, FastCopy corrects timestamp difference on the different filesystem(NTFS timestamp precision is 100ns, FAT is 2sec or etc.), automatically.
However, some NAS timestamp precision is very strange, so manual settings(in msec) are available.
|Hash mode (for verify)||Select Hash mode (xxHash/MD5/SHA-1/SHA-256) for verifying.|
|If a verify error occurs,
delete the file instead of renaming to .fc_verify_err
|(Same as left)|
|Try to delete directory, even if "Filter" is checked.||By default, it does not delete directory, if "Filter" is checked.|
If it is checked, it always tries to delete directories. (attention)
|Use NSA method for Wipe & Delete option||If "Wipe & Delete" option is used, it is overwritten 3 times (random-data 2 times and zero-data 1 time), before renaming and deleting|
|Number of history items for Source/DestDir||need to restart FastCopy|
|Write to Error log||Logging error message to FastCopy.log|
|Use UTF-8 in Errlog||Using UTF-8 character in FastCopy.log. Otherwise using MBCS.|
|Write to File Log||Creating Log\(date).log and logging to all copied/deleted/error files.
|Write ACL errors to Error Log||Sometimes, many errors will occur in non NTFS (Samba, or etc.)|
|Write AltStream errors to Error Log||Sometimes, many errors will occur in non NTFS (Samba, or etc.)|
|+||Create file / directory|
|-||Delete file / directory|
|!!||Verify error (mismatch of hash value)|
|Update check at startup||Update check if arg is not specified|
|Confirm before executing||Confirming|
|Info Update Span||Information Update Span can be specified.|
|Balloon Notification at the finish||Enable balloon notification at the finish, if it is minimized.|
|Prevent auto sleep during copying||Prevent auto sleep(by OS) during copying.|
(Note: If an error dialog is shown, FastCopy doesn't prevent auto sleep)
|English UI||(It has no effect in English OS) English UI mode will be set. In order for English UI to take effect, you need to restart FastCopy|
|ActionName||By default, Normal/Standby/Hibernate/Shutdown are ready.|
New actions can be created.
|Play Sound||Play sound at finish|
Only play, if error occurred option is available.
|Execute command||Specify commands at finish.|
Execute at Always/no error/error" can be specified.
If "Wait for Finish" is checked, FastCopy won't execute standby/hibernate/shutdown until finishing commands.
|Before executing to standby/hibernate/shutdown mode, FastCopy shows count down(60sec) dialog that has a "cancel" button.|
If another FastCopy is running, FastCopy will wait for it to finish and start to count down.
|Grace||The count-down time can be specified.|
|Don't execute, if error occurred.||execute only if succeeded|
|Add/Modify||Add/Modify parameters in main window(Source/DestDir, Operation mode, Buffer size, Nonstop/Verify/Estimate/ACL/AltStream/Wipe&Delete/Filter checkboxes, Filter strings, HDD mode) as named job.|
|Delete||Delete registered job.|
|Open "Windows Task Scheduler"||Open "Windows Task Scheduler". |
(Only shortcut. FastCopy doesn't have any function for windows task scheduler)
|The separate character is space(' ') in command line mode. (not semicolon).|
If filename contains space character, please enclose with double quotation marks.
Ex) fastopy.exe C:\Windows "C:\Program Files" /to="D:\Backup Folder\"
|If /to= option is used, it must be described as the last parameter.|
|If you want to wait to finish, please use "start /wait ..." command.|
Ex) start "" /wait FastCopy.exe [/options]...
|Specify operation mode. (By default, diff mode is used.|
If delete mode is specified, then "/to=desit_dir" is not used.)
|/auto_close||Close automatically after execution is finished with no errors.|
|/force_close||Close automatically and forcibly after execution is finished.|
|/open_window||It will not be stored in the task notification area.|
|/estimate||Estimate complete time.(to disable, /estimate=FALSE)|
|/balloon(=FALSE)||Show balloon notification at finish. (to disable, /balloon=FALSE)|
|/no_ui||Dialog box will not be shown. This is for background tasks. If /no_ui is used, /no_confirm_del /no_confirm_stop /force_close are set automatically. If FastCopy runs in session 0 (e.g. running with task scheduler), /no_ui is set automatically. However even if /no_ui is set, standby/hibernate/shutdown countdown dialog will not be prevented.|
|/no_confirm_del||Don't confirm before deleting.|
|/no_confirm_stop||Don't show error dialog, even if critical errors occur.|
|/no_exec||Don't start to execute.|
|/error_stop||Show error dialog (and operation is interrupted), if an error occurs. (to disable, /error_stop=FALSE)|
|/bufsize=N(MB)||Specify the size(MB) of the main buffer for Read/Write operation.|
|/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 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, /skip_empty_dir=FALSE)|
|/job=job_name||Specify the job that is already registered.|
|/force_start(=N)||Start at once without waiting for the finish of other FastCopy executing. (/force_start=2-N ... specify number of max parallel process)|
|/disk_mode=(auto|same|diff)||Specify Auto/Same/Diff HDD mode. (default: Auto)|
|Specify speed control level.|
|/srcfile="files.txt"||Specify source files by textfile. User is able to describe 1 filename per line. (Attention:We don't recommend specifying a lot of files|
|/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/EA (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 xxHash(MD5/SHA-1/SHA-256) (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 FastCopy2.ini.|
|/postproc=action_name||Specify post-process action name (to disable, /postproc=FALSE)|
|v3.84||Fix sometimes missing stat/log near the last file. (vv3.83 only)|
|v3.83||Fixed a rare WaitForSingleObject Error at exit.|
|v3.82||Add non-exclusive open for Destination files option. (Copy/Move Option Settings).|
|v3.81||Add FileLogHistory item in the File Menu.|
Add absolute path mode in Include/Exclude filter.|
Support Win10 LongPathAware. (It can be selected over MAX_PATH files/dirs in the FileDialog).
Fixed an issue that caused the process to stop in the same drive move mode. (v3.54 or later)
|v3.70||Speed up delete/sync by multi-threading deletion processing. (More than twice faster via network)|
Fix error counter. (When a large file couldn't be written to dest, it was incorrectly counted twice)|
Enable to load fastcopy2.ini that contains BOM.
|v3.62||Extend ACL option. (Not only DACL but also SACL will be copied, if it is copied between the local NTFS/ReFS Drive with Admin mode)|
Fixed an issue that when ACL/AltStream is enabled, they are not copied correctly. (v3.60 only)|
Fix Installer(Win7 or earlier)
Add multi-threading for opening source files. (Big effect for network drive)|
Fix to reflect timestamp for WevDAV(for OneDrive).
Prevent hardlink errors for non NTFS drive.
Speed control designation more accurately. |
Slightly improved performance in the same HDD mode.
Fixed problem that shell extension does not work. (v3.53 only)
Change hash default to xxHash. |
xxHash 3 to 4 times faster verification calculation speed (Eliminate verification processing neck in 1 ~ 2 GB/s or more environment).
Add /SILENT options etc to the installer (check with /h option).
Add verify error behavior option (deleting error-file instead renaming to .fc_verify_err).|
Fix include/exclude filter problem. (if same dir and file names was specified in the filter, only last same name entry was enabled).
In the Source selection dialog, it can be selected files and dirs simultaneously.|
Improved network drive performance by adaptively changing the I/O size and async I/O issue number.
(With a high latency network drive, it is twice or more faster than Explorer and older version)
When minimizing, if the icon is hidden in the task notification area, display it on the task bar.
Fixed the exit code did not become -1 on error.
Improve settings (add actions at minimized, shell extensions, etc.)
Change to 1 file installer and add "Expland" button to installer.
Output a dump at exception.
To be uninstallable via "application and function".
Represent the completion status in the color at the top of the icon.(Green: complete, red: error)
Changed the Official website to https://fastcopy.jp/en/.
Modify I/O parameters and improve performance for network drive|
Add update check at startup. (It can be changed in Settings → Misc)
Fix not to show copy mode option when delete mode is selected.
Reduce the occurrence of the"Not empty" error when directories are deleted. (OS is the cause)
Fix incorrect same/different drive judgement for the volume using two or more physical HDDs.
Add Update Check (Menu → Help → Check Update).|
Support multi-line input in Source Edit Control.
Improve estimating precision. (Investigate not only source but also destination)
Change default action of Source button. (It shows FileSelection Dialog as default. It can be changed in Settings → Misc)
Support to enable/disable Large Fetch option. (Settings → I/O Settings)
Fix an exception that occurred when opening the AboutDialog.|
Fix to interpret BOM that is specified by /srcfile_w option.
Increase initial main buffer size(x64:128MB → 256MB, x86:64MB → 128MB).|
Increase maximum attributes buffer size (x64:1GB → 8GB).
Increase path buffer size for verify/move (x64:8MB → 128MB) and configurations can be made by fastcopy2.ini (max_movesize/max_digestsize).
Change setting tolerance of timestamp(ms) to 64bit (max 23days → unlimit).
Use NOBUFFERING flag even if it is a network file when the file is big.
Allow BOM in the specified files by /srcfile= or /srcfile_w= options.
Improve buffer separation policy.
Take a measure for DLL preload attack.
Add xxHash option for verify.|
Add file creation mode (experimental).
Fixed a problem that only the deepest filter was used if multiple filters with different depth were specified.
Fix same/diff network drive detection.
Overlapped I/O, Relative path filter, Optimize for parallel running, Change license to GPLv3|
Support UserMode(not Admin) Shell Extension.
Improve speed for listing directory entries. (using FIND_FIRST_EX_LARGE_FETCH for high-latency environment or huge number of directory entries)
Add SHA-256 to Verify Mode
|v2.00||JobMng, Interpret Symlink, Simple compare, ACL/AltStrem, Speed Control|
|v1.00||1.00 release (2005/03/10)|
|v0.50||First alpha release (2004/09/27)|