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

395
Views
¿Cómo ejecuto el mismo script una y otra vez, con retraso entre cada ejecución?

para ejecutar un mismo script varias veces, actualmente uso ;

Por ejemplo, voy a ejecutar algo como esto

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

Esto funciona muy bien y ejecuta mi script 3 veces seguidas. Me pregunto si hay una manera fácil de ejecutar estos 3 con un intervalo de 1 hora.

Editar : gracias por las respuestas, soy nuevo en el aprendizaje de la programación, así que discúlpeme por publicar esto en JS, ya que parece una pregunta que no es de JS.

Más información : la forma en que quiero usarlo, ejecute este script cada 1 hora, digamos 20 horas/veces. Todo el trabajo toma alrededor de 5 minutos después de ejecutar el script y quiero que se ejecute cada hora y haga ese trabajo de 5 minutos.

Entonces, tal vez ejecute un comando en el nivel Bash, donde puedo escribirlo 20 veces con un retraso de una hora. Funciona cada hora durante 20 horas, luego puedo hacer todo de nuevo.

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

0

Así es como suelo hacer esto en bash:

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

El {1..3} le dice al bucle for que haga esto 3 veces, y la función de suspensión toma la cantidad de segundos como argumento. (3600 = 60 segundos * 60 minutos)

about 4 years ago · Juan Pablo Isaza Report

0

Aquí está la respuesta actualizada a su pregunta.

Ahora simplemente ejecute node RocketLaunch.js 1 20 Este es el comando para indicarle al script que se ejecute cada 1 hora durante las próximas 20 horas.

 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!