Using kcott's Time::Piece built-in module suggestion, consider the following:
use strict; use warnings; use Time::Piece; <> =~ /([^,]+)/ and my $dir = Time::Piece->strptime( "$1 2013", '%b %d %H:%M %Y' )-> +mdy('') or die "Unable to capture date string."; if ( !-e $dir ) { mkdir $dir or die "Unable to create directory $dir: $!"; print "Created dir: $dir\n"; } else { print "Directory $dir already exists.\n"; }
Usage: perl inFile
Since the date doesn't contain the year, that's hard coded. The in-line <> notation (short for <ARGV>) gets the first line of the file sent to the script. Next, a regex is used to capture that first line's date information (held in $1), and the date/year information is used by Time::Piece to return a 'mmddyyyy' string for the directory name. Finally, mkdir is used to create the directory if it doesn't already exist ( !-e $dir ).
Hope this helps!
In reply to Re^3: Convert date into day and month
by Kenosis
in thread Convert date into day and month
by Ma
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |