Sé que para eliminar un at
trabajo programado tengo que usar atrm "numjob1 numjob2"
, pero ¿hay una manera fácil de hacerlo para todos los trabajos?
command-line
at
robob
fuente
fuente
at -l | awk '{printf "%s ", $1}' | xargs atrm
Podrías hacer algo como esto:
fuente
cut -f3
primera columna es la fechaEsto me parece una línea corta:
fuente
Para más sistemas AIX 6, simplemente puede hacer:
Ref: http://pic.dhe.ibm.com/infocenter/aix/v6r1/index.jsp?topic=%2Fcom.ibm.aix.cmds%2Fdoc%2Faixcmds1%2Fatrm.htm
fuente
Aquí está mi versión xargs que evita los frenos y es de esperar intuitiva:
También puede seleccionar trabajos específicos por marca de tiempo / ID de usuario y luego eliminarlos:
fuente
Tenía más de 58k trabajos en el atd (alguien reinició el servidor y por alguna razón el servicio atd no se inició). Eliminar los trabajos usando atrm es muy doloroso para una cola muy alta.
Detuve atd y eliminé todos los directorios de / var / spool / atjobs y los archivos de / var / spool / atspool . Para mí funcionó.
fuente
atd
nuevo, y si eso fue exitoso, ni mencionas para qué Unix sería una solución adecuada. ¿Cómo se aseguró de que los trabajos de otros usuarios no fueran eliminados?