Print Yesterday’s Date Using Perl

Quick tip for working with Unix scripts that need yesterday’s date. If you have Perl, try this:

perl -e ‘@y=localtime(time()-86400);printf “%04d%02d%02d”,$y[5]+1900,$y[4]+1,$y[3];’

should print to stdout the date in the yyyymmdd format. Much simpler than writing an entire function in a script and messing around with 1st of the month, leap years, and possibly dates beyond 2037 (check Perl documentation).


The UNIX Forums – get yesterday in yyyymmdd format

Technorati Tags: , , , ,


2 thoughts on “Print Yesterday’s Date Using Perl”

  1. Good to know that. I have a few more perl scripts that I’d love to share. They help to do disk space housekeeping and performance tracking on bash and sh.

Leave a Reply

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