PDA

View Full Version : Windows: update file modified date based on created date



hunta
2011-05-23, 05:30
SqueezeCenter lists 'New Music' based on modified date rather than created date. Therefore if I go through updating artwork, or any other tag data, I lose the natural order.

The created date is untouched, and seems to be much more reliable for reflecting when files entered my library.

1) Can I use this for determining new music instead of the modified date?

2) If not, as I suspect, does anyone know of a utility to update the file modified date based on created date? I've found a few which allow manual stipulation of a date, but not which will perform batch updates based on another value.

Soulkeeper
2011-05-23, 06:25
You have to admit, this problem is temporary in its very nature. :)

Best avoided by tagging the albums properly the first time, so you won't have to revisit.

Now to answer your questions:
1) I don't think so.
2) There are a lot of utilities to set the date to something specific, but I am not aware of any software that does exactly what you want. Your best bet would probably be to write something yourself, in e.g. .vba or Python.

hunta
2011-05-23, 06:29
You have to admit, this problem is temporary in its very nature. :)

Best avoided by tagging the albums properly the first time, so you won't have to revisit.

Now to answer your questions:
1) I don't think so.
2) There are a lot of utilities to set the date to something specific, but I am not aware of any software that does exactly what you want. Your best bet would probably be to write something yourself, in e.g. .vba or Python.

I totally agree - now I'm there though, hopefully I can sort the dates out and I won't need to revisit too often.

Unfortunately my vba / Python skills are totally non-existent, so if anyone has anything they can help with it would be most appreciated.

Mnyb
2011-05-23, 08:13
If you use for example mp3tag or puddletag you can set it do not change the date, so that you can safely update tags without the files showing up at the top of the "new music " list.

hunta
2011-05-23, 15:02
If you use for example mp3tag or puddletag you can set it do not change the date, so that you can safely update tags without the files showing up at the top of the "new music " list.

Thanks for the tip, I'll investigate for future changes. Still have the current issue though of course!

vagskal
2011-05-23, 21:38
I use the Custom Browse menu for new albums. For me it shows the albums in the order I added them to SBS. It is a bit slow on my setup though. I had to limit it to 200 albums to get it to show at all and still it sometimes chokes SBS.

You could also import your SBS database into muso. Muso has a nice view where you can have the albums sorted by date added (a-z or z-a) the way you want to (and you can suppress single file albums, for example, from showing up if you like).

I still keep the standard new music menu to check that any tag changes I make are picked up by SBS.

fairyliquidizer
2011-05-23, 22:28
I reckon I'll try custom browse as I just messed up my New music folder.

Sent from my HTC Desire using Tapatalk

Steve Bernard, Jr
2011-05-24, 12:42
On Mon, May 23, 2011 at 6:02 PM, hunta
<hunta.4u7non1306188241 (AT) no-mx (DOT) forums.slimdevices.com> wrote:
>
> Mnyb;632844 Wrote:
>> If you use for example mp3tag or puddletag you can set it do not change
>> the date, so that you can safely update tags without the files showing
>> up at the top of the "new music " list.
>
> Thanks for the tip, I'll investigate for future changes. Still have the
> current issue though of course!
>
>

Here's a quick way you can do it using Windows Powershell (
http://support.microsoft.com/kb/968929 to download the newest version,
unless you have Windows 7, where it's already included)

Let's say you have a folder with all of your music files called c:\music

Open Powershell and type the following two commands (hit enter after each):

$files = Get-Child-Item c:\music -recurse
foreach ($f in $files) { $f.LastWriteTime = $f.CreationTime }

That should do it. It will change the modified date of every
filesystem object inside c:\music to match its own creation date.

Standard disclaimer: This is offered with no guarantee or warranty,
make a backup of your files before running this, etc, etc. It just
worked quite nicely for me on a test folder on my machine, so test it
on your system and let me know if it works.

-Steve

hunta
2011-05-29, 09:07
That's perfect Steve, thank you - exactly what I was looking for.

In case anyone else wants to use this (and so I can remember what I did when I need to use it again!), I did find I had to Google the command to pick up a small typo (Get-ChildItem, rather than Get-Child-Item). Here's the revised version:

$files = Get-ChildItem c:\music -recurse
foreach ($f in $files) { $f.LastWriteTime = $f.CreationTime }

Steve Bernard, Jr
2011-05-29, 09:12
On Sun, May 29, 2011 at 12:07 PM, hunta
<hunta.4uib7b1306685281 (AT) no-mx (DOT) forums.slimdevices.com> wrote:
>
> That's perfect Steve, thank you - exactly what I was looking for.
>
> In case anyone else wants to use this (and so I can remember what I did
> when I need to use it again!), I did find I had to Google the command to
> pick up a small typo (Get-ChildItem, rather than Get-Child-Item). Here's
> the revised version:
>
> $files = Get-ChildItem c:\music -recurse
> foreach ($f in $files) { $f.LastWriteTime = $f.CreationTime }
>

Whoops! I was typing it on my phone and must have added an extra dash.

Glad it worked for you!

-Steve

sle118
2011-07-05, 08:06
Glad it worked for you!
-Steve

It worked for me too. Thanks a lot!