Another Aide-mémoire – Renaming Files Based on Modification Time

I have a bunch of weather station time lapse daily web cam files (found here: Historical 24-hour WX Timelapse Videos) where the date of the web page index is the day after. This has bugged me for the past three years, but it was one of those things to “get around to”.

I finally got “around to it” (after getting tired of experimenting with pfSense haproxy for now). So that I will remember how I did it, my code is:

# Rename the file based on the modified date
# go through the list of .mp4 files
for file in *.mp4 ; do
# Part 1 - for each file get the modification date and put it in a string. $file needs double quotes 
# due to spaces in the original
        part1="$(stat -c %Y "$file")"
# Part 2 - for each file add the destination location, format the new filename based on creation time (YYYY-MONTH-DD) and add the ".mp4" extension  
        part2="fixed/$(echo "$part1" | awk '{ print strftime("%Y-%B-%d", $1)".mp4" }')"
# Uncomment this to test first :-)
#       echo $file " is now" $part2
# This is the actual move of the original file (double quotes due to the spaces in the filename) to 
# the new directory. Use --preserve so the modification date doesn't change
        cp --preserve "$file" $part2
# All done

It may not be the prettiest, most efficient code, but it works.

About Mike Pelley

Let’s see… A little about me… I’ve been around information technology since 1983 with computers such as DEC Rainbows (weird machine – the standard DOS couldn’t format its own floppy disks – remember them? – and I had to format them on a friend’s IBM PC) to Radio Shack TRS-80 to Apple ][e and Apple //c in the beginning. I have programmed in 8-bit assembly language on 6502, FORTRAN and COBOL on IBM System/370 (and I still hate JCL), VAX BASIC and COBOL (and a weird and massive WordPerfect 4.0 macro) on DEC VMS (Alpha), C/C++ on Digital Unix (ALPHA), and C/C++, Perl (it may be powerful but I still hate it), PHP on Linux (Red Hat, Centos, Ubuntu, etc.). I have work with databases such as Digital RDB (later to become Oracle RDB), Oracle DBMS, Microsoft SQL Server, MySQL and PostgreSQL on VAX, Alpha, Sun and Intel. Check out my professional profile and connect with me on LinkedIn. See I still think that Digital created some of the best ideas in the world: VAX clustering, DSSI disks (forerunner to SCSI) and the Alpha processor (first commercial 64-bit processor – Red Hat screamed on an Alpha!). DEC just could not seem to be able to give air conditioners away to someone lost in the Sahara Desert! VMware is one of the best ways to get the most out of an x64 server. And I have tried Oracle VM, Virtual Box and Microsoft Virtual Server. Outside of that I am a huge military history buff starting in the early 20th century. I love Ford Mustangs (my ’87 Mustang GT was awesome) and if I had the money I would have a Porsche 928S4. If I had a lot of money I would have a Porsche 911 Turbo. I also play too much AmrA 3 Exile mod. Over 5,000+ hours... I have a wonderful son, Cameron. I have a long suffering (Do you really need all that computer junk?) wife, Paula. I live in Paradise, Newfoundland and Labrador.
This entry was posted in aide-mémoire, Uncategorized. Bookmark the permalink.

Leave a Reply

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

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