Node.js 这些节点生成的cronjob存储在哪里?
我已经使用以下代码创建了CronJobs,但是我找不到它们来销毁它们。在Debian BullsEye上,我检查了/etc/crontab、/etc/cron.d、/etc/cron.daily、/etc/cron.weekly、/etc/cron.monthly,但没有任何内容 此进程在www数据下运行Node.js 这些节点生成的cronjob存储在哪里?,node.js,cron,Node.js,Cron,我已经使用以下代码创建了CronJobs,但是我找不到它们来销毁它们。在Debian BullsEye上,我检查了/etc/crontab、/etc/cron.d、/etc/cron.daily、/etc/cron.weekly、/etc/cron.monthly,但没有任何内容 此进程在www数据下运行 new cronjob('* ' + sMarr[i] + ' ' + sHarr[i] + ' * * *', function(x) {
new cronjob('* ' + sMarr[i] + ' ' + sHarr[i] + ' * * *', function(x) {
shell.exec('ffmpeg -hide_banner -loglevel warning -i '+iUarr[x]+' -c:a aac -t 00:'+dMarr[x]+':'+dSarr[x]+' -f hls /mnt/streamlinks/'+outputName+'.m3u8&', {async:true});
}.bind(null, i), null, true, 'Europe/London').start();
console.log("made cron job");
}catch{
console.log("Error creating cronjob");
}
提前感谢。这些cron作业是在内存中创建的,不是在系统级别创建的。这允许模块在不同的操作系统(如Windows)上工作 创建作业时,可以保留对该作业的引用,然后随时使用job.stop()停止该作业
谢谢,这解释了很多。我使用匿名实例化,而不是停止作业,因为我认为这是系统级的。在实时系统上销毁先前生成的cron作业的最有效方式是什么?嗯,如果您没有对cron作业的引用,我不知道如何停止它。您可以枚举活动作业,但我不知道有什么api函数可以做到这一点。如果希望停止运行cron作业,可能需要找到正在运行的节点脚本并停止它。
const CronJob = require('cron').CronJob;
const job = new CronJob('* * * * * *', function() {
console.log('Sample cron job...');
}, null, false);
// Start the cron job...
job.start();
setTimeout(() => {
console.log("Stopping cron job..");
// Kill the cron job
job.stop();
}, 10000)