How to copy or move files and folders whilst maintaining their original time date stamp.

It’s often useful when try to replicate live file data to maintain the date/time stamp of the data you are copying or moving.  As you no doubt know a standard copy whether it be from the command line or by a simple drag and drop will give any copied/moved files a new date/time stamp of the current time.

A simple way of maintaining the original date/time stamp of a file or folder is by using the ever useful  Microsoft RoboCopy utility.  This is built into Windows Server 2008, Vista and Windows 7 as standard though if you are running an earlier Windows OS (eg: XP or Windows Server 2003) it can be found, and used, as part of the Windows Server 2003 Resource Toolkit which can be downloaded from here. 

However I should point out that the useful ‘DCOPY’ command which maintains the date/timestamp of the directories is only available with the versions of Robocopy found after that in the Windows Server 2003 Resource Toolkit (ie: > XP010).

For the ‘DCOPY’ command you will require the XP026 version of Robocopy which can only be found in a Microsoft Utility called ‘Utility Spotlight’ which provides a GUI front-end to Robocopy and can be downloaded via a link at the top of this page.  Don’t worry as you don’t have to use the GUI interface.

Also if you’re running Windows Server 2003 then you’ll find that the Vista and Windows Server 2008 versions won’t run if you copy and then attempt to run this version of robocopy.exe locally.

If you’ve already downloaded and installed the Windows Server 2003 Resource ToolKit and then Utility Spotlight (GUI Robocopy) you will find that you’ll still get the XP010 version of Robocopy when running it from the command-line.

The reason?  The Utility Spotlight installation copies the updated (ie: XP026) version of Robocopy to the C:WindowsSystem32 directory as opposed to the version found in the ‘Resource Toolkit’ directory on the C drive.  When Robocopy is run from the command-line it uses the version (ie: XP010) found in the ‘Resource Toolkit’ directory.

To resolve…  delete the version of Robocopy found in the ‘Resource Toolkit’ found on the C drive.  When you go to run Robocopy from the command-line again it’ll use the more recent version found in C:WindowsSystem32.

Here is a summary of the different versions:

  • XP010 – Bundled in the Windows 2003 resource kit
  • XP026 – Downloaded with Robocopy GUI
  • XP027 – Bundled with Windows Vista
  • XP028 – Bundled with Windows Vista SP1 and Windows Server 2008

Below is an example of the Robocopy syntax that you’d use to maintain the date/time stamp on both the files and directories during a copy:

How to copy or move files and folders whilst maintaining their original time date stamp

For a good explanation of all the Robocopy commands checkout this Wikipedia entry.

 

Comments

  1. Chin says

    I’ve been look this kind utility for a while. This is great explanation….Very clear and all steps. You save my work a lot easier. Thank you so much.

  2. Neil says

    I tried it and it doesn’t copy a newer version of robocopy.exe to system32
    Also the gui options do not include dcopy

  3. Villy says

    only wish I have read the whole articel and not only the first part. used 4 hours to no use and only my self to blame :-)
    now dcopy:t works as expected.
    thank you for your effort.

  4. Marvin says

    Simon–Agreed, very clear explanation. Thank you!

    Neil, you didn’t read carefully. The GUI version does NOT go to the system32 folder so don’t look for it there! And although it is true that the GUI options don’t include DCOPY, you are not limited to the GUI. You run the GUI version via your command prompt. (In XP click “Run” on the start menu, then type in “cmd”. Then type in your robocopy copy command, which can, in fact, include DCOPY.) Works like a charm! If you need help with command prompt syntax, there’s plenty out there on the web.

  5. Dennis Black says

    Just an FYI for those that stumble upon this having trouble with /DCOPY:T command in Robocopy.

    I kept trying to use this command and it was not working when trying to use the /DCOPY:T command. My timestamps on my files were fine, but the timestamps on the directories were the current file copy timestamp.

    After breaking down each command 1 by 1 I realized that the /MT command for multi-threading causes the /DCOPY:T to no longer work correctly. I was using Robocopy on our Windows 2008 R2 file server to initiate the copy from our remote file server.

    If you would like to test this, use the /CREATE command to generate the files and directories with ZERO data so that it executes quickly for testing.

  6. Don says

    I believe your original premise is incorrect.
    Copying a file from one local drive to another local drive i.e. partitions on a single physical drive does not alter the timestamp.
    Copying to a Networked Drive does, unless my system is up the creek, but I just tested that.

  7. john says

    Hi. If you are running 64bit version of windows 2003 server, the command line version it will NOT install in system32, but rather, the WINDOWSWoW64 directory. This drove me nuts, but finally found it and it works.

  8. Bryan says

    Hi,

    How do I use the Robocopy /Move command and preserve the folder dates? It’s assigning the current date and time to the folders it moves. I’ve tried this way:

    /S /MOVE /R:3 /W:5 /REG /FP /NFL

    and this way:

    /S /COPY:DATSO /DCOPY:T /MOVE /R:3 /W:5 /REG /FP /NFL

    Both with same result, new folder dates.

    Thanks,

    Bryan

  9. Davidus428 says

    It’s simple to move folders and directories and still preserving Creation Date. Just hold “shift” and drag the folder to the new location (move command). Date Modified will be the present date but Date Created will retain the original date. hope this helps.

  10. bacosystem1 says

    Hi,
    How could i move files and folders which is in “Work1” folder, to “Work2” folder along with folder structure by checking the “last-modified-date”. It should scan whole files and foldres in Work1 and should move automatically the file folders to Work2 if the file folders date is 45 days older than current date.

    Please help me for this. I got more than 50K files in my Work1 folder, out of that 25% files are working presently. I dont want to delete old files, i’ll keep it as backup.

  11. David Spector says

    Many times during my 40 year career as a software engineer I ran into operating systems that routinely updated the date-time-modified of files whenever they are copied. I always told the OS designers in my companies that DTMs should reflect the time when the user modifies a file by using a modification program such as a file editor, or when the user first generates the file. DTMs should always be preserved by OS copying, no matter what the context or reason for the copying, because it is most useful as an attribute of the content, not of the file proper (the file as a container).

    It was like talking to a wall. Not one OS designer seemed to understand the value of preserving DTMs as reflecting user modifications rather than strict file modifications. Their view of files as simple containers hid their understanding of how users view files: as containing data that they can modify.

    Maybe this note will be discovered someday by the designers of Windows 100 and finally provoke change.

    System: Firefox 39.0 under Windows 8 on Asus Laptop

    David Spector
    Springtime Software

Leave a Reply

Your email address will not be published. Required fields are marked *