From the discussion, it seems that for some weird reason, you get different results in the mtime field of stat than you expect.
How are you building your expectation of what is correct?
The following program should output the correct mtime for each file, which should be identical with what the OS thinks, as verified via dir:
use strict;
for my $file (@ARGV) {
print "Checking '$file'\n";
if( -f $file ) {
system("dir $file");
my $mtime= (stat($file))[9];
print "Mtime: $mtime\n";
print "As string: " . localtime($mtime);
} else {
print "File '$file' does not exist, skipping\n";
};
};
__END__
Checking 'tmp.pl'
Volume in Laufwerk Q: hat keine Bezeichnung.
Volumeseriennummer: 5A02-C2B6
Verzeichnis von Q:\
06.11.2014 12:01 336 tmp.pl
1 Datei(en), 336 Bytes
0 Verzeichnis(se), 956.154.372.096 Bytes frei
Mtime: 1415271660
As string: Thu Nov 6 12:01:00 2014
Ideally, you should always find that the output of the timestamps as reported by dir are identical to the output of the timestamp as found via $mtime and output via localtime.
-
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.
|