in reply to Review of my script

... sprintf ... $year + 1900 ...

Don't do that, use POSIX::strftime( )

use POSIX(); $timestamp = POSIX::strftime('%Y-%m-%d-%H-%M-%S', gmtime );