Hay una variable especial para esto en bash:
kill $!
ps se expande al PID del último proceso ejecutado en segundo plano.
Puedes matar por número de trabajo. Cuando pones una tarea en segundo plano, verás algo como:
$ ./script &
[1] 35341
Ese [1]
es el número de trabajo y puede ser referenciado como:
$ kill %1
$ kill %% # Most recent background job
Para ver una lista de números de trabajo, use el jobs
dominio. Más de man bash
:
Hay varias formas de hacer referencia a un trabajo en el shell. El caracter %
introduce un nombre de trabajo. Número de trabajo n
puede ser referido como %n
. También se puede hacer referencia a un trabajo usando un prefijo del nombre usado para iniciarlo, o usando una subcadena que aparece en su línea de comando. Por ejemplo, %ce
se refiere a un ce
detenido trabajo. Si un prefijo coincide con más de un trabajo, bash informa de un error. Usando %?ce
, por otro lado, se refiere a cualquier trabajo que contenga la cadena ce
en su línea de comando. Si la subcadena coincide con más de un trabajo, bash informa un error. Los símbolos %%
y %+
consulte la noción del shell del trabajo actual, que es el último trabajo que se detuvo mientras estaba en primer plano o se inició en segundo plano. Se puede hacer referencia al trabajo anterior usando %-
. En la salida relacionada con los trabajos (por ejemplo, la salida del comando de trabajos), el trabajo actual siempre se marca con un +
, y el trabajo anterior con un -
. Un solo %
(sin especificación de trabajo que lo acompañe) también se refiere al trabajo actual.