Python ejecuta programas automáticamente en segundo plano

Tabla de contenido

Método 1: Ejecute el programa en segundo plano (agregue "&"):

Método dos, escribir script bash

Método tres, use el comando nohup

1. Ver todos los procesos en segundo plano:

o:

2. Vea el proceso especificado, como uwsgi:

3. Mata el proceso especificado:


(Personalmente creo que el método tres, el comando nohup, es el más efectivo)

Método 1: Ejecute el programa en segundo plano (agregue "&"):

python run.py &

Nota: Si usa ssh para conectarse al servidor, debe usar el comando: salir para salir, no lo cierre directamente, de lo contrario se cerrará el proceso correspondiente.

Método dos, escribir script bash

Crear archivo .sh

touch start.sh

Escribir código:

vi start.sh

====>

/root/anaconda3/envs/myenv/bin/python scheduled_task.py &

Iniciar guion:

start.sh 或者 ./start.sh

Método tres, use el comando nohup

nohup python scheduled_task.py &

Introducción al comando Nohup:

       Propósito: uso de comandos LINUX, ejecutar comandos sin colgar. 
  Sintaxis : Comando nohup [Arg ...] [&] 
  Descripción : El comando nohup ejecuta el comando especificado por el parámetro Comando y cualquier parámetro Arg relacionado, ignorando todas las señales de colgar (SIGHUP). Utilice el comando nohup para ejecutar programas en segundo plano después de cerrar la sesión. Para ejecutar el comando nohup en segundo plano, agregue & (el símbolo de "y") al final del comando. 
  Si no redirige la salida del comando nohup, la salida se agregará al archivo nohup.out en el directorio actual. Si el archivo nohup.out en el directorio actual no se puede escribir, la salida se redirige al archivo $ HOME / nohup.out. Si no se puede crear o abrir ningún archivo para agregarlo, no se puede llamar al comando especificado por el parámetro Comando. Si el error estándar es un terminal, toda la salida escrita en el error estándar del comando especificado se redirige al mismo descriptor de archivo que la salida estándar. 
  Estado de salida : el comando devuelve los siguientes valores de salida: 
  126 El comando especificado por el parámetro Comando se puede encontrar pero no se puede llamar. 
  127 Se produjo un error en el comando nohup o no se pudo encontrar el comando especificado por el parámetro Comando. 
  De lo contrario, el estado de salida del comando nohup es el estado de salida del comando especificado por el parámetro Comando. 
  El comando nohup y su archivo de salida 
  comando nohup: si está ejecutando un proceso y cree que el proceso no terminará cuando cierre la sesión de su cuenta, puede usar el comando nohup. Este comando puede continuar ejecutando el proceso correspondiente después de cerrar la sesión de la cuenta / cerrar la terminal. Nohup significa no colgar (no colgar). 
  La forma general del comando es:comando nohup y 

Use el comando nohup para enviar un trabajo: 
  si usa el comando nohup para enviar un trabajo, toda la salida del trabajo será redirigida a un archivo llamado nohup.out por defecto, a menos que especifique un archivo de salida: 
  comando nohup> myout .file 2> & 1 & 
  En el ejemplo anterior, la salida se redirige al archivo myout.file.
  Use trabajos para ver las tareas.
  Use fg% n para cerrar

      Nota: Al salir de la conexión sh, aún debe usar el comando exit.

1. Ver todos los procesos en segundo plano:

ps -ef

o:

ps -aux

2. Vea el proceso especificado, como uwsgi:

ps -ef|grep uwsgi

3. Vea el proceso que ocupa un puerto determinado:

centos:

ss -lntpd | grep :8088

4. Mata el proceso especificado:

kill pid(指定的进程)

 

Supongo que te gusta

Origin blog.csdn.net/weixin_38664232/article/details/107959035
Recomendado
Clasificación