Qual è il significato di kill% 1


Risposte:


18

Brevemente,

Significa uccidere il lavoro numero 1, non elaborare il numero uno.

I lavori possono essere elencati con il jobscomando.

Più in generale, si riferisce a qualsiasi shell che si sta utilizzando e la sintassi potrebbe differire da shell a shell.

Usando la shell bash, un utente può avere diversi processi (lavori) in esecuzione contemporaneamente, il cui processo genitore è la shell che stai usando. Nozioni di base sul controllo del lavoro di Google bash

Il comando kill incorporato è utilizzato per inviare un segnale a una di quelle pipeline di lavoro. Se non viene specificato il segnale specifico, viene utilizzato SIGTERM, che di solito termina (uccide) il lavoro, da cui il nome kill. Ma è possibile specificare qualsiasi segnale, alcuni dei quali potrebbero in qualche modo resettare il processo o causare comportamenti non letali.

Infine,% 1 è un modo (tra i tanti!) Di specificare a quale lavoro si desidera inviare il segnale. % 1 si riferisce al lavoro in cima alla pila di lavori in background.


Minor..ma non è uno stack, è come una coda.
infinito

6

Ad esempio, quando esegui un processo in background:

# find / &
[1] ....

# ls -lr /usr &
[2] ....

Ora, qui ci sono due processi in esecuzione in background e collegati al terminale corrente. Se lo fai: uccidi% 1

il primo comando 'trova' sopra verrà terminato. Come detto da Anders, puoi elencare i processi in background attualmente in esecuzione sul terminale e ucciderli:

# jobs
[1] find / ...
[2] ls -lr ...

# kill %1
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.