Skip to content
master
Switch branches/tags
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
src
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Enough Time Ago

Build Status npm

A node js library for checking how much time has passed since file was modified, changed, created or accessed. Always returns true, false or undefined (if file does not exist).

This library uses node fs methods, and its purpose is to shorten the code.

npm i enough-time-ago

Examples with modified, same with created, changed or accessed.

const enoughTimeAgo = require('enough-time-ago');

enoughTimeAgo('./newFile', 'modified', 10000);
// return false, if file newFile modified less (or exactly 10000 ms) than 10 seconds ago

enoughTimeAgo('./oldFile', 'modified', 10000);
// return true, if file oldFile modified more than 10 seconds ago

enoughTimeAgo('./nonFile', 'modified', 10000);
// return undefined, if such file does not exist

enoughTimeAgo('./newFile');
// return false, if file newFile modified less (or exactly 86400000 ms) than one day ago
// by default millisecond values are 86400000 ms (one day) and modified are default check

Delete file if it was last modified more than a 10 seconds ago. Same with created, changed and accessed.

const enoughTimeAgo = require('enough-time-ago');
const fs = require('fs');

if (enoughTimeAgo('./file.html', 'modified', 10000)) {
  fs.unlinkSync('./file.html');
}
// delete './file.html' if this file modified more than 10 seconds ago

Example - how to delete all obsolete (older than one day - 86400000 ms) files in a folder:

Remember! This example can even delete the file that launched it.

const fs = require('fs');
const path = require('path');
const enoughTimeAgo = require('enough-time-ago');

// This function removes the old file (which has been updated too long ago).
function delOld(file, time) {
  if (fs.existsSync(file)) {
    if (enoughTimeAgo(file, 'modified', time)) {
      fs.unlinkSync(file);
    }
  }
}

// This function deletes all old files with the specified extension in the specified folder.
function delAllOld(folder, extension, time = 86400000) {
  fs.readdirSync(folder).forEach((file) => {
    if (file.split('.').pop() === extension) {
      delOld(folder + '/' + file, time);
    }
  });
}

delAllOld(path.resolve(__dirname, ''), 'html', 86400000);
// This function delete ALL old files with the extension 'html' in the same folder that contains this script.

About

A Node.js library for checking how much time has passed since file was modified, changed, created or accessed.

Topics

Resources

License

Releases

No releases published

Packages

No packages published