Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

165
Vistas
Cómo ejecutar un script si la hora coincide con una hora en otras zonas horarias

Actualmente, estoy usando máquinas virtuales en la nube para ejecutar mi código y, por eso, tengo asignada una nueva máquina virtual que se encuentra en una zona horaria diferente. Quiero ejecutar un script de bash que ejecute un script de python a las 7:30 p. m. (hora del este). Desde aquí , sé cómo ejecutar un script bash en un momento específico, por ejemplo, echo "ls -l" | at 07:00 . Desde aquí sé cómo obtener la hora actual de la hora del Este, por ejemplo, TZ=America/New_York date . Además, desde aquí sé cómo obtener solo la hora usando la date +%R .

Soy un codificador de Python e hice todo lo posible para escribir un código sudo que muestre lo que estoy tratando de lograr como un script bash:

 while true do Now=TZ=America/New_York date +%R if [Now -eq 7:30pm] then python3 myfile.py done
over 4 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

Como ya sabe cómo configurar el comando at para ejecutar un comando a la hora especificada y cómo convertir el EST a la hora local, puede combinarlos:

 echo "python3 myfile.py" | at $(date -d "19:30 EST" +%R)

Cuando invoca el comando at , siempre advierte que "los comandos se ejecutarán usando /bin/sh". Solo importará si invocamos un comando específico de bash como:

 echo "shopt -s globstar; ls **" | at ..

que fallará.

En nuestro caso, el comando python3 myfile.py se ejecutará tanto con /bin/sh como con /bin/bash , entonces no se preocupe por la advertencia.

date -d STRING interpreta la STRING como una representación de fecha/hora e imprime la fecha/hora convertida en el formato especificado +%R .

Si desea enviar la salida a un archivo, puede decir:

 echo "python3 myfile.py > /path/to/a/file" | at $(date -d "19:30 EST" +%R)

Para enviar al terminal actual, primero identifique el terminal con el comando tty :

 $ tty => /dev/pts/0

Luego redirija la salida a la terminal con:

 echo "python3 myfile.py > /dev/pts/0" | at $(date -d "19:30 EST" +%R)
over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda