the unix command touch is avaiable on your mac. this tool allowes you to change the date created and date modified-fields of your files in the filesystem (is suppose this is what finder evaluates).
If you have a lot of files, and you still can correlate them (If nameA.tod has become nameA.mov), you can easily script this command with a little bit of bash magic, applying the .toc-dates to the .mov-files.
Otherwise, you can still do that manually:
touch -r nameA.tod nameA.mov
This will transport access and modification time from the tod-file to the mov-file. Also, you can specify the timestamp yourself:
touch -t 200905172359 thefile
will change the access and modification date to the 17th of may last year, the minute before midnight.
Type "man touch" to see all options.
BEWARE: If you run touch on a file without parameters, it will update it to the current time. This might break your history and logic. If you mistype the filename, touch will create the file (with size 0)
EDIT: There we go, updating to explain how to script this. In unix and bash, there is usually two ways to base a loop on files. One way is the find . -exec echo {} \; which gets just a bit too complicated in this case. The other way is to write a shell script file and program a proper loop:
#! /bin/sh
for oldname in *.tod; do
namebase=`echo "$oldname" | cut -d'.' -f1`
touch -r $oldname $namebase.mov
done
Let's explain this quickly:
- the first line is the so called "she bang line" which tells the system how to run this script. It is precisely a comment indicating the path to the executable needed.
- the
for loop (everything indented is "in" the loop) helps us doing a task repeatedly.
- every dollar sign indicates the use of a variable, where definitions of a variable do not need a special character.
- the way we ask for the
for-loop, the content will be run for every file matching the pattern, so every file ending on .tod. The filename of the current instance can be found in the variable "oldname", since this is the name of the former file, before the conversion.
- the first line "in" the loop stores the the base of the filename without extension, so we can add another in the second line.
- the second line is the
touch command as explained before, just applying the variables
- the last line just finishes (or "closes") the loop.
Now, let's see the steps we need to get this running:
- The contents as above need to be copied in a file, preferably in the directory where the files reside. If needed otherwise, the script need to be adapted.
- Preferably, this file is called
something.sh, like retoucher.sh or transferTimestamps.sh
- This file needs to be made executable. For this, we need a shell/terminal/commandline in the directory where the file resides, but I take this for granted, since you got already this far (and for other reasons). To render the file executable type and execute
chmod +x retoucher.sh (it adds the eXecutable flag to the file 'modes')
- then already the file can be executed: It needs just a little prefix to it's name, so that the system knows where to find it, the local directory is never assumed: executing
./retoucher.sh will do the trick (without any messages of success).
Pfew, I hope that helps :) If not, feel free to tell my why in the comments, I'll try to repair and refine this description.