Ho visto il seguente comando:
$ kill %1
A che serve questa affermazione?
zsh
ha il completamento del lavoro, tale che l'esecuzione htop &
e il disown %[TAB]
completamento automatico verranno completati disown %htop
. Adoro zsh
:)
Ho visto il seguente comando:
$ kill %1
A che serve questa affermazione?
zsh
ha il completamento del lavoro, tale che l'esecuzione htop &
e il disown %[TAB]
completamento automatico verranno completati disown %htop
. Adoro zsh
:)
Risposte:
Brevemente,
Significa uccidere il lavoro numero 1, non elaborare il numero uno.
I lavori possono essere elencati con il jobs
comando.
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.
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