@tm = localtime;
$mytime = sprintf("%d%02d%02d%02d%02d%02d", $tm[5]+1900, $tm[4]+1, $tm
+[3], $tm[2], $tm[1], $tm[0])
rename ($filea, "$filea$mytime") || die "Couldn't rename file: $!";
will work. If you want just the first couple of letters, use
@tm = localtime;
$mytime = sprintf("%d%02d%02d%02d%02d%02d", $tm[5]+1900, $tm[4]+1, $tm
+[3], $tm[2], $tm[1], $tm[0])
rename ($filea, substr($filea,0,3).$mytime) || die "Couldn't rename fi
+le: $!";
Here is how this works. If you call localtime with an array, the array is filed with the date and time. Element five of the array is the year, four is the month, three is the day, two the hour, one the minute, and zero the seconds. You need to add 1900 to the year, or if you want a two digit year, you need to subtract 100 (if the year is 20xx). The month you need to add 1 to (it's made to easly reference an array). The sprintf formats the string. The rename renames a file. The substr command extracts a part of a string (in this case the first three letters). Finaly, the '.' operator concatenats two strings.
-
Are you posting in the right place? Check out Where do I post X? to know for sure.
-
Posts may use any of the Perl Monks Approved HTML tags. Currently these include the following:
<code> <a> <b> <big>
<blockquote> <br /> <dd>
<dl> <dt> <em> <font>
<h1> <h2> <h3> <h4>
<h5> <h6> <hr /> <i>
<li> <nbsp> <ol> <p>
<small> <strike> <strong>
<sub> <sup> <table>
<td> <th> <tr> <tt>
<u> <ul>
-
Snippets of code should be wrapped in
<code> tags not
<pre> tags. In fact, <pre>
tags should generally be avoided. If they must
be used, extreme care should be
taken to ensure that their contents do not
have long lines (<70 chars), in order to prevent
horizontal scrolling (and possible janitor
intervention).
-
Want more info? How to link
or How to display code and escape characters
are good places to start.