last modified file date in node.js
For node v 4.0.0 and later:
fs.stat("/dir/file.txt", function(err, stats){
var mtime = stats.mtime;
console.log(mtime);
});
or synchronously:
var stats = fs.statSync("/dir/file.txt");
var mtime = stats.mtime;
console.log(mtime);
Here you can get the file's last modified time in seconds.
fs.stat("filename.json", function(err, stats){
let seconds = (new Date().getTime() - stats.mtime) / 1000;
console.log(`File modified ${seconds} ago`);
});
Outputs something like "File modified 300.9 seconds ago"
You should use the stat function :
According to the documentation :
fs.stat(path, [callback])
Asynchronous stat(2). The callback gets two arguments (err, stats) where stats is a fs.Stats object. It looks like this:
{ dev: 2049
, ino: 305352
, mode: 16877
, nlink: 12
, uid: 1000
, gid: 1000
, rdev: 0
, size: 4096
, blksize: 4096
, blocks: 8
, atime: '2009-06-29T11:11:55Z'
, mtime: '2009-06-29T11:11:40Z'
, ctime: '2009-06-29T11:11:40Z'
}
As you can see, the mtime
is the last modified time.