ho creato un posto di lavoro con il comando at
su Solaris 10.List e uccidere a posti di lavoro su UNIX
Si sta lavorando ora, ma voglio ucciderlo, ma non so come posso trovare il numero di posti di lavoro e come uccidere quel lavoro o processo.
ho creato un posto di lavoro con il comando at
su Solaris 10.List e uccidere a posti di lavoro su UNIX
Si sta lavorando ora, ma voglio ucciderlo, ma non so come posso trovare il numero di posti di lavoro e come uccidere quel lavoro o processo.
Si dovrebbe essere in grado di trovare il comando con un ps
variante, come:
ps -ef
ps -fubob # if your job's user ID is bob.
Poi, una volta posizionato, dovrebbe essere una questione semplice da usare kill
per uccidere il processo (autorizzazioni permettendo).
Se si sta parlando di sbarazzarsi di lavori nella coda at
(che non sono ancora in esecuzione), è possibile utilizzare atq
elencarli e atrm
a sbarazzarsi di loro.
non è in coda è in esecuzione lavoro ogni 15 secondi contemporaneamente – soField
Se si ha un processo che sta dando il via ad altri lavori (nuovi ogni 15 secondi), è necessario prima uccidere quello di primo livello, in modo che il comportamento si interrompa. Sta ancora usando ps per localizzarlo e uccidere per terminarlo. – paxdiablo
Anche il lavoro di primo livello sta cambiando, e ottenere un nuovo id ogni 15 secondi – soField
Per eliminare un lavoro non ancora eseguito, è necessario il comando atrm
. È possibile utilizzare il comando atq
per ottenere il suo numero nell'elenco at.
di uccidere un lavoro che ha già iniziato a correre, avrete bisogno di grep per utilizzando:
ps -eaf | grep <command name>
e quindi utilizzare kill
per fermarlo.
Un modo più veloce per farlo sulla maggior parte dei sistemi è:
pkill <command name>
Prima
ps -ef
per elencare tutti i processi. Nota il numero del processo di quello che vuoi uccidere. Quindi
kill 1234
se si sostituisce 1234 con il numero di processo che si desidera.
In alternativa, se si è assolutamente certi che non v'è un solo processo con un particolare nome, o se si vuole uccidere i processi multipli che condividono lo stesso nome
killall processname
'killall' funziona su Linux, ma si noti che su alcuni sistemi, come Solaris, in realtà * uccide tutti i processi *, che probabilmente non è quello che si desidera. –
Wow, Solaris è DUMB. Perché vorresti mai farlo? È come avere un alias per 'rm -rf /' – polvoazul
at -l
per elencare i lavori, che dà tornare come questo:
age2%> at -l
11 2014-10-21 10:11 a hoppent
10 2014-10-19 13:28 a hoppent
atrm 10
uccide lavoro 10
O così il mio amministratore di sistema mi ha detto, ed è
Prima di 'uomo ps'. Leggilo. Quindi aggiorna la domanda in base a ciò che leggi. –
S.Lotto: i lavori 'at' non sono la stessa cosa dei processi. Il lavoro –
è in esecuzione in background, quando eseguo ps -ef posso vedere alcuni processi che eseguono i miei comandi che il mio script di bash contiene quei comandi, la sua esecuzione 15 secondi in una volta e gli id proceses che cambiano sempre quando eseguo ps -ef e i impossibile uccidere con kill process_id – soField