GNU/Linux >> Linux Esercitazione >  >> Linux

bash:uccide silenziosamente il processo della funzione in background

kill $foo_pid
wait $foo_pid 2>/dev/null

A proposito, non conosco la tua fantastica barra di avanzamento, ma hai visto Pipe Viewer (pv)? http://www.ivarch.com/programs/pv.shtml


Mi sono appena imbattuto in questo e ho capito che "rinnegare" è ciò che stiamo cercando.

foo &
foo_pid=$!
disown

boring_and_long_command
kill $foo_pid
sleep 10

Il messaggio di morte viene stampato perché il processo è ancora nell'elenco delle shell dei "lavori" osservati. Il comando disown rimuoverà il processo generato più di recente da questo elenco in modo che non venga generato alcun messaggio di debug quando viene ucciso, anche con SIGKILL (-9).


Linux
  1. Processo discendenti?

  2. Funzioni nelle variabili Shell?

  3. kill Esempi di comandi in Linux

  4. linux:termina l'attività in background

  5. Come uccidere un processo figlio dopo un determinato timeout in Bash?

Come uccidere un processo in Linux

Funzioni Bash

Kill Command in Linux

Come KILL un processo su Linux

Processo in background in Linux

Processi di uccisione in Raspbian