Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

396
Views
How do i run same script over and over, with delay between each run?

in order to run a same script multiple times, i currently use ;

For example, i will run something like this

node RocketLaunch.js;node RocketLaunch.js;node RocketLaunch.js

This works great and run my script 3 times back to back. I am wondering is there an easy way i can run these 3 with gap of 1 hour?

Edit - Thank you for the responses, i am new to learning programming so apologize for posting this in JS, since it seems like a non JS question.

More information - The way i want to intend to use it, run this script every 1 hour for lets say 20 hours/times. The entire job takes around 5 minutes after i run the script and i want it to run every hour and do that 5 minutes job.

So perhaps run a command at Bash level, where i can type it 20 times with a delay of an hour. It runs every hour for 20 hours, then i can do the whole thing again.

about 4 years ago · Juan Pablo Isaza
2 answers
Answer question

0

This is how I typically do this in bash:

for x in {1..3};
do
node RocketLaunch.js
sleep 3600
done

The {1..3} tells the for loop to do this 3 times, and the sleep function takes the number of seconds as its argument. (3600 = 60 seconds * 60 minutes)

about 4 years ago · Juan Pablo Isaza Report

0

Here is the updated answer to your question

Now just run node RocketLaunch.js 1 20 This is the command to tell the script to run every 1 hour for the next 20 hours.

const rockets = {
    launched: () => {
        //your job
        console.log("I'm A Rocket");
    }
};
var arg = process.argv;
const times = Number(arg.slice(2)[1]);
const hours = Number(arg.slice(2)[0])  * 3600000; // to make the hour;

 function launch() {
    var x = 1
    //kick off rockets at script start
    rockets.launched();
    timer = setInterval(() => {
        rockets.launched();
        x++
        if (x === times) {
            clearInterval(timer);
        }
    }, hours) //1000 ms = 1 second
}

launch();

about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!