
Security News
/Research
npm Phishing Email Targets Developers with Typosquatted Domain
A phishing attack targeted developers using a typosquatted npm domain (npnjs.com) to steal credentials via fake login pages - watch out for similar scams.
lum_crontab
Advanced tools
A module for reading, creating, deleting, manipulating, and saving system cronjobs with node.js
A module for creating, reading, updating, and deleting system cron jobs
$ npm install crontab
require('crontab').load(function(err, crontab) {
// create with string expression
var job = crontab.create('ls -la', '0 7 * * 1,2,3,4,5');
// create with Date
var job = crontab.create('ls -lh', new Date(1400373907766));
// create with comment
var job = crontab.create('ls -lt', null, 'comment 2');
// create special: @reboot, @hourly, @daily, @weekly, @monthly, @yearly, @annually, @midnight
var job = crontab.create('ls -la', '@reboot');
// check valid
var job = crontab.create();
if (job == null) {
console.log('failed to create job');
}
// remove object
var job = crontab.create('ls -lr', '0 7 * * 1,2,3,4,5', 'comment 3');
crontab.remove(job);
// remove conditions
crontab.remove({command:'ls -lh', comment:/comment 2/});
// manipulate: every business hour
var job = crontab.create('ls -l');
job.minute().at(0);
job.hour().between(8, 17);
job.dow().between('mon', 'fri');
// manipulate: every other hour on weekday nights
var job = crontab.create('ls -l');
job.hour().between(19, 0).every(2);
job.hour().between(0, 6).every(2);
job.dow().between('mon', 'fri');
// manipulate: summer
var job = crontab.create('ls -l');
job.month().between('jun', 'sep');
// manipulate: Christmas
var job = crontab.create('ls -l');
job.minute().at(30);
job.hour().at(9);
job.dom().on(24);
job.month().in('dec');
// show all jobs
var jobs = crontab.jobs();
// show jobs with conditions
var jobs = crontab.jobs({command:'ls -l', comment:/comment 1/});
// reset jobs to their original state
crontab.reset();
// save
crontab.save(function(err, crontab) {
});
console.log(crontab);
});
require('crontab').load(function(err, crontab) {
// get all env variables
var vars = crontab.vars();
// find env variables by name
var vars = crontab.vars({name: 'FOO'});
// find env variables by value
var vars = crontab.vars({val: 'bar'});
// find env variables by name and value
var vars = crontab.vars({name: 'FOO', val: 'bar'});
// find env variables by name
var vars = crontab.vars('FOO');
// create with a pair of arguments
crontab.vars().add('FOO', 'foo');
// create multiple with an object argument
crontab.vars().add({'FOO':'foo', 'BAR':'1'});
// remove all env variables
crontab.vars().rm();
// remove selected env variables
crontab.vars({name: 'FOO'}).rm();
// save
crontab.save(function(err, crontab) {
});
});
require('crontab').load(function(err, crontab) {
if (err) {
return console.error(err);
}
var command = 'ls -l';
crontab.remove({command:command});
crontab.create(command, '@reboot');
crontab.save(function(err, crontab) {
});
});
require('crontab').load(function(err, crontab) {
if (err) {
return console.error(err);
}
var uuid = '64d967a0-120b-11e0-ac64-0800200c9a66';
var nodePath = process.execPath.split('/').slice(0, -1).join('/');
var exportCommand = 'export PATH=' + nodePath + ':$PATH';
var foreverCommand = require('path').join(__dirname, 'node_modules', 'forever', 'bin', 'forever');
var sysCommand = exportCommand + ' && ' + foreverCommand + ' start ' + __filename;
crontab.remove({comment:uuid});
crontab.create(sysCommand, '@reboot', uuid);
crontab.save(function(err, crontab) {
console.log(err)
});
});
// when executing for another user the library uses sudo, unless the
// current process runs as root
require('crontab').load('alice', function(err, crontab) {
if (err) {
return console.error(err);
}
crontab.save(function(err, crontab) {
console.log(err)
});
});
Blagovest Dachev
This is a JavaScript port of a Python package by Martin Owens
GPL3
FAQs
A module for reading, creating, deleting, manipulating, and saving system cronjobs with node.js
The npm package lum_crontab receives a total of 5,900 weekly downloads. As such, lum_crontab popularity was classified as popular.
We found that lum_crontab demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
/Research
A phishing attack targeted developers using a typosquatted npm domain (npnjs.com) to steal credentials via fake login pages - watch out for similar scams.
Security News
Knip hits 500 releases with v5.62.0, refining TypeScript config detection and updating plugins as monthly npm downloads approach 12M.
Security News
The EU Cyber Resilience Act is prompting compliance requests that open source maintainers may not be obligated or equipped to handle.