Las tres respuestas a continuación interpretan esta pregunta de tres maneras. @GURU, ¿podría aclarar qué le gustaría hacer? ¿Le gustaría eliminar un proceso iniciado por cron que ahora se está ejecutando, o le gustaría evitar que el trabajo se ejecute en el futuro?
jcrawfordor
Respuestas:
29
Puede hacer esto de la misma manera que detendría cualquier proceso.
Para detener un crontrabajo actualmente en ejecución , puede realizar una de las siguientes acciones:
pkill process-name
o si conoce el PID (puede determinarlo ejecutando ps):
¿Cómo enumerar qué trabajos cron actualmente en ejecución?
UWU_SANDUN
55
@UWU_SANDUN: puede usar pgrepo grepla salida de ps. No hay nada especial en un proceso desde el que se ejecuta cron. Simplemente buscaría el proceso con su propio nombre. También puede hacer ps fauxww | grep -A 1 '[C]RON'y las líneas debajo de la (s) línea (s) mostrarán los trabajos en ejecución cron. Puede ajustar el número 1 más alto para ver los subprocesos, si los hay.
Pausado hasta nuevo aviso.
Tenga en cuenta que debe ejecutar cygwin como administrador para eliminar procesos. Vea aquí para más información sobre eso.
takanuva15
El uso de Ubuntu que he escrito lo que @ takanuva15 sugerido, ps fauxww | grep -A 1 '[C]RON'. Esto enumera los trabajos cron actuales en ejecución, por lo que luego puede anotar el PID y ejecutarlo # kill -9 PID. ¡Gracias!
russellhoff
@russellhoff: -9solo debe usarse como último recurso porque evita que el proceso realice una limpieza a medida que sale.
Pausado hasta nuevo aviso.
17
Para dejar de ejecutar el trabajo cron. Primero obtenga el id de proceso de su comando con
Puede editar la tabla cron y comentar la tarea en cuestión. Cambie al usuario que controla la tarea, exporte su editor de elección al entorno y luego use crontab -l:
Eso enumera el crontab. Use crontab -epara editarlo. Para los sistemas que lo tienen, es preferible usarlo en sudolugar de su. Además, crontab -efuncionaría para el crontab del usuario (o root), pero no para el crontab del sistema (por ejemplo /etc/cron*).
Pausado hasta nuevo aviso.
1
crontab -r
eliminaría todos los crontabs que se están ejecutando, o simplemente puede comentar los comandos en el crontab que deben detenerse.
Respuestas:
Puede hacer esto de la misma manera que detendría cualquier proceso.
Para detener un
cron
trabajo actualmente en ejecución , puede realizar una de las siguientes acciones:o si conoce el PID (puede determinarlo ejecutando
ps
):(sustituyendo el PID real)
fuente
pgrep
ogrep
la salida deps
. No hay nada especial en un proceso desde el que se ejecutacron
. Simplemente buscaría el proceso con su propio nombre. También puede hacerps fauxww | grep -A 1 '[C]RON'
y las líneas debajo de la (s) línea (s) mostrarán los trabajos en ejecucióncron
. Puede ajustar el número 1 más alto para ver los subprocesos, si los hay.ps fauxww | grep -A 1 '[C]RON'
. Esto enumera los trabajos cron actuales en ejecución, por lo que luego puede anotar el PID y ejecutarlo# kill -9 PID
. ¡Gracias!-9
solo debe usarse como último recurso porque evita que el proceso realice una limpieza a medida que sale.Para dejar de ejecutar el trabajo cron. Primero obtenga el id de proceso de su comando con
top -p $(pgrep -d',' your_command)
p.ej:-
top -p $(pgrep -d',' httpd)
y correr
kill PID
reemplazarPID
con id de procesofuente
Extraño, nadie ha mencionado este método:
En el editor abierto, elimine la línea de la tarea que desea detener o inserte un
#
signo, guarde y salgap.ej
antes de
después
o
reiniciar el servicio después de hacer cambios por
fuente
Si está utilizando Redhat (RHEL) / Fedora Core / Cent OS Linux, use el siguiente comando:
Si está utilizando Debian o Ubuntu Linux, el siguiente comando:
PD: deberías ser root para hacer estas cosas
fuente
Primero escriba
ps aux
para ver qué se están ejecutando todos los procesos.Luego tome nota
PID
de cada proceso que desea detenerLuego escribe
kill {PID
} para cada proceso.También eche un vistazo a estos enlaces (enlaces de superusuario):
Verify-that-a-cron-job-has-complete
ps-aux-output-significado
fuente
Puede editar la tabla cron y comentar la tarea en cuestión. Cambie al usuario que controla la tarea, exporte su editor de elección al entorno y luego use
crontab -l
:fuente
crontab -e
para editarlo. Para los sistemas que lo tienen, es preferible usarlo ensudo
lugar desu
. Además,crontab -e
funcionaría para el crontab del usuario (o root), pero no para el crontab del sistema (por ejemplo/etc/cron*
).crontab -r
eliminaría todos los crontabs que se están ejecutando, o simplemente puede comentar los comandos en el crontab que deben detenerse.
fuente
En primer lugar, compruebe el proceso de trabajo con este comando.
La salida de este comando es
y ahora mata el proceso con este comando
fuente
Trabajando para mi para linux
Elimina todos los procesos que tienen el nombre de proceso crontab
fuente