A three code line solution demonstrated step by step under the Perl debugger:
DB<1> $year = (localtime time)[5] + 1900; DB<2> print $year 2013 DB<3> @filenames = map {"file_name_$year" . sprintf "%02d", $_} (1. +.11); DB<4> x @filenames 0 'file_name_201301' 1 'file_name_201302' 2 'file_name_201303' 3 'file_name_201304' 4 'file_name_201305' 5 'file_name_201306' 6 'file_name_201307' 7 'file_name_201308' 8 'file_name_201309' 9 'file_name_201310' 10 'file_name_201311' DB<5> unshift @filenames, "file_name_" . ($year -1) . "12"; DB<6> x @filenames 0 'file_name_201212' 1 'file_name_201301' 2 'file_name_201302' 3 'file_name_201303' 4 'file_name_201304' 5 'file_name_201305' 6 'file_name_201306' 7 'file_name_201307' 8 'file_name_201308' 9 'file_name_201309' 10 'file_name_201310' 11 'file_name_201311' DB<7>
Done!
In reply to Re: Year-month for file names
by Laurent_R
in thread Year-month for file names
by Anonymous Monk
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |