Killall: Difference between revisions
(8 intermediate revisions by the same user not shown) | |||
Line 4: | Line 4: | ||
=killall - Protsesside tapmine nime järgi= | =killall - Protsesside tapmine nime järgi= | ||
==Kirjeldus:== | ==Kirjeldus:== | ||
Siinkohal käsitleme Killall käsku Ubuntu Linux 12.04 keskkonnas, teistes keskkondades võib see käsk teha hoopis muud. | |||
Killall saadab signaali kõigile töötavatele protsessidele, mis vastavad protsessinimele. Kui signaali pole eraldi sisestatud, saadab protsessile SIGTERM käsu. | |||
Signaalid saab esitada kas nime järgi(-HUP) või numbrina(-1). | Signaalid saab esitada kas nime järgi(-HUP) või numbrina(-1). | ||
Line 21: | Line 20: | ||
killall protess ei tapa kunagi iseend, küll aga teisi killall protsesse. | killall protess ei tapa kunagi iseend, küll aga teisi killall protsesse. | ||
==SYNOPSIS== | |||
killall [-e,--exact] [-g,--process-group] [-i,--interactive] [-q,--quiet] [-v,--verbose] [-w,--wait] [-V,--version] [-S,--sid] [-c,--context] [-s,--signal signal] [--] name ... | |||
killall -l | |||
killall -V,--version | |||
==OPTIONS== | ==OPTIONS== | ||
Line 29: | Line 35: | ||
===-g, --process group (protsessi grupp)=== | |||
Tapab protsessi grupi kuhu protsess kuulub. Kill signaal saadetakse ainult korra protsessi grupile, isegi siis kui mitmeid protsesse kuulub samasse protsessi gruppi. | Tapab protsessi grupi kuhu protsess kuulub. Kill signaal saadetakse ainult korra protsessi grupile, isegi siis kui mitmeid protsesse kuulub samasse protsessi gruppi. | ||
===-i, --interactive(interaktiivne)=== | ===-i, --interactive(interaktiivne)=== | ||
Line 42: | Line 48: | ||
</pre> | </pre> | ||
-l, --list(nimekiri) | ===-l, --list(nimekiri)=== | ||
Näitab nimekirja kõigist võimalikest saadetavates signaalidest. | |||
Näide: | Näide: | ||
<pre> | <pre> | ||
Line 52: | Line 60: | ||
</pre> | </pre> | ||
-q, --quiet(vaikne) | ===-q, --quiet(vaikne)=== | ||
Ei pahanda kui ei leia ühtegi protsessi mida tappa. | |||
===-v, --verbose(väga jutukas)=== | |||
Teatab kas signaal on edukalt saadetud. | |||
Näide: | Näide: | ||
<pre> | <pre> | ||
Line 63: | Line 73: | ||
</pre> | </pre> | ||
-V, --version(versioon) | ===-V, --version(versioon)=== | ||
Näitab versiooni infot. | |||
Näide: | |||
<pre> | <pre> | ||
killall -V | killall -V | ||
Line 77: | Line 90: | ||
</pre> | </pre> | ||
=== -w, --wait(ootab)=== | |||
Ootab kuni kõik protsessid on tapetud. Killall kontrollib iga sekundi järel kas mõni tapetud protsess on veel elus, seda niikaua kuni kõik on tapetud. Killall jääbki ootama igavesti kui protsess on ignoreeritud, ei reageeri, või protsess on zombi olekus. | |||
===Signaalid mida saame saata protsessidele:=== | |||
Signaalid mida saame saata protsessidele: | |||
Signaal #väärtus käsk kirjeldus | Signaal #väärtus käsk kirjeldus | ||
Line 108: | Line 120: | ||
SIGTTOU 22,22,27 Stop tty output for background process | SIGTTOU 22,22,27 Stop tty output for background process | ||
Signaale SIGKILL ja SIGSTOP ei saa püüda, blokeerida ega ignoreerida. | |||
Saadetav signaali number tuleb kirjutada " - " märgiga. | |||
Näide, saadame protsessile htop kill(-9) signaali: | Näide, saadame protsessile htop kill(-9) signaali: | ||
<pre> | <pre> |
Latest revision as of 11:38, 13 January 2013
Tõnu Erm AK21 2012
killall - Protsesside tapmine nime järgi
Kirjeldus:
Siinkohal käsitleme Killall käsku Ubuntu Linux 12.04 keskkonnas, teistes keskkondades võib see käsk teha hoopis muud.
Killall saadab signaali kõigile töötavatele protsessidele, mis vastavad protsessinimele. Kui signaali pole eraldi sisestatud, saadab protsessile SIGTERM käsu.
Signaalid saab esitada kas nime järgi(-HUP) või numbrina(-1). Vaikimisi saadetakse SIGTERM(-15) signaal.
Kui käsu nimes on / siis tapetakse protsess, mis ette antud faili kasutab.
killall tagastab null tagastuskoodi kui vähemalt üks protsess on tapetud.
killall protess ei tapa kunagi iseend, küll aga teisi killall protsesse.
SYNOPSIS
killall [-e,--exact] [-g,--process-group] [-i,--interactive] [-q,--quiet] [-v,--verbose] [-w,--wait] [-V,--version] [-S,--sid] [-c,--context] [-s,--signal signal] [--] name ... killall -l killall -V,--version
OPTIONS
-e, --exact(täpne vaste)
Nõuab täpset vastet väga pikkade prostsessinimede puhul. Kui käsu nimi on pikem kui 15 sümbolit, siis täielik nimi pole võimalik. Sellistel juhtudel killall tapab kõik protsessid, mis vastavad esimestele 15 tähemärgile. Sellistel juhtudel kasutades -e lippu sellised protsessid jäetakse vahele. Killall kuvab kõik vahele jäetud kirjed kui on lisatud lipp -v.
-g, --process group (protsessi grupp)
Tapab protsessi grupi kuhu protsess kuulub. Kill signaal saadetakse ainult korra protsessi grupile, isegi siis kui mitmeid protsesse kuulub samasse protsessi gruppi.
-i, --interactive(interaktiivne)
Küsib üle kas soovite protsessi tappa. Näide:
killall -i htop Kill htop(4462) ? (y/N)
-l, --list(nimekiri)
Näitab nimekirja kõigist võimalikest saadetavates signaalidest.
Näide:
killall -l HUP INT QUIT ILL TRAP ABRT IOT BUS FPE KILL USR1 SEGV USR2 PIPE ALRM TERM STKFLT CHLD CONT STOP TSTP TTIN TTOU URG XCPU XFSZ VTALRM PROF WINCH IO PWR SYS UNUSED
-q, --quiet(vaikne)
Ei pahanda kui ei leia ühtegi protsessi mida tappa.
-v, --verbose(väga jutukas)
Teatab kas signaal on edukalt saadetud.
Näide:
killall -v htop Killed htop(4462) with signal 15
-V, --version(versioon)
Näitab versiooni infot.
Näide:
killall -V killall (PSmisc) 22.15 Copyright (C) 1993-2005 Werner Almesberger and Craig Small PSmisc comes with ABSOLUTELY NO WARRANTY. This is free software, and you are welcome to redistribute it under the terms of the GNU General Public License. For more information about these matters, see the files named COPYING.
-w, --wait(ootab)
Ootab kuni kõik protsessid on tapetud. Killall kontrollib iga sekundi järel kas mõni tapetud protsess on veel elus, seda niikaua kuni kõik on tapetud. Killall jääbki ootama igavesti kui protsess on ignoreeritud, ei reageeri, või protsess on zombi olekus.
Signaalid mida saame saata protsessidele:
Signaal #väärtus käsk kirjeldus ---------------------------------------------------------------------- SIGHUP 1 Term Hangup detected on controlling terminal or death of controlling process SIGINT 2 Term Interrupt from keyboard SIGQUIT 3 Core Quit from keyboard SIGILL 4 Core Illegal Instruction SIGABRT 6 Core Abort signal from abort(3) SIGFPE 8 Core Floating point exception SIGKILL 9 Term Kill signal SIGSEGV 11 Core Invalid memory reference SIGPIPE 13 Term Broken pipe: write to pipe with no readers SIGALRM 14 Term Timer signal from alarm(2) SIGTERM 15 Term Termination signal SIGUSR1 30,10,16 Term User-defined signal 1 SIGUSR2 31,12,17 Term User-defined signal 2 SIGCHLD 20,17,18 Ign Child stopped or terminated SIGCONT 19,18,25 Cont Continue if stopped SIGSTOP 17,19,23 Stop Stop process SIGTSTP 18,20,24 Stop Stop typed at tty SIGTTIN 21,21,26 Stop tty input for background process SIGTTOU 22,22,27 Stop tty output for background process
Signaale SIGKILL ja SIGSTOP ei saa püüda, blokeerida ega ignoreerida.
Saadetav signaali number tuleb kirjutada " - " märgiga.
Näide, saadame protsessile htop kill(-9) signaali:
killall -9 htop [1]+ Killed htop
Näide, saadame protsessile htop kill signaali:
killall -SIGKILL htop [1]+ Killed htop
Kasutatud materjal:
http://www.kernel.org/doc/man-pages/online/pages/man7/signal.7.html
http://en.wikipedia.org/wiki/Killall
http://linux.about.com/library/cmd/blcmdl1_killall.htm
http://akadeemia.kakupesa.net/OSAS/loengud/