Ejecuto dos scripts. Ambos son esencialmente el mismo código, pero deben ejecutarse con 5 minutos de diferencia para evitar colisiones. Primer script: #! / Bin / sh
# First run
line="Bonus check"
stamp=$(date +%Y%m%d-%H%M)
# sleep 90s
echo "$stamp\t $line" >> /home/rdanner3/Desktop/CardParty.log
{
export DISPLAY=:0.0
google-chrome [URL masked]
}
sleep 45s
# google-chrome
pkill -f chrome
# Second run to seventh run identical to above; stripped for brevity.
Segundo script (observe que es esencialmente el mismo código; ¡ambos realmente necesitan ser bucles para la cordura!)
#!/bin/sh
# 1st run
line="Bonus checked."
stamp=$(date +%Y%m%d-%H%M)
# sleep 90s
echo "$stamp\t $line" >> /home/rdanner3/Desktop/Slots.log
{
export DISPLAY=:0.0
google-chrome [URL masked]
}
sleep 45s
# google-chrome
pkill -f chrome
# 2nd run to 7th run identical to above code...stripped for brevity
¿Qué sucede cuando los scripts alcanzan la segunda ejecución? Se ejecutan en cuestión de segundos, a pesar de que los trabajos cron que inicialmente los inician están separados por 5 minutos. Es bastante obvio (a partir de los archivos de registro que escriben las dos secuencias de comandos) que se están iniciando con una diferencia de segundos, no en el orden correcto. ¿Cambiar el segundo guión a (digamos) ash o bash sería útil para evitar que los comandos de suspensión de los dos guiones se confundan entre sí? ¿O estoy cometiendo algún otro error (por ejemplo, necesito descomentar la segunda ejecución de google-chrome para permitir que el pkill despeje el aire)
Noté el problema ayer, decidí que necesitaba un poco de ayuda. Entonces vine aquí por eso.
fuente
for url in "http://a.com" "http://b.com"; do google-chrome $url; sleep 45s; done