Me gustaría tener una actualización automática de mis gtags, pero solo cuando el sistema esté inactivo.
Para lograr esto, estoy iupdate
vigilando las partes interesantes de mi carpeta de origen. Pero tengo un problema con la parte "inactiva": sé que el batch
comando puede ejecutar trabajos cuando la carga cae por debajo de 1,5 (o un valor configurado). Pero puede suceder que iupdate
se ejecute batch
varias veces antes de que se ejecute el trabajo, lo que generaría múltiples actualizaciones de gtags.
Por supuesto, podría crear algún archivo de bloqueo y comenzar batch
solo si no se llamó antes.
¿Pero existe algún método más estándar? Espero algo como batch_only_once
...
Respuesta1
Esto lo hará por ti:
$ cat /etc/lsb-release | grep -i desc
DISTRIB_DESCRIPTION="Ubuntu 14.04 LTS"
$ apt-cache show run-one
....
Description-en: run just one instance of a command and its args at a time
This utility will run just one instance at a time of some command and
unique set of arguments (useful for cronjobs, eg).
Respuesta2
Puede crear un script contenedor que primero analizará atq
y eliminará otros trabajos por lotes utilizando atrm
.