linux 命令:killall 详解
linux 命令:killall 详解
killall 的功能是根据名称杀掉进程。
用法
killall [-Z, --context pattern] [-e, --exact] [-g, --process-group] [-i, --interactive] [-o, --older-than TIME] [-q, --quiet] [-r, --regexp] [-s, --signal signal] [-u, --user user] [-v, --verbose] [-w, --wait] [-y, --younger-than TIME] [-I, --ignore-case] [-V, --version] [--] name ...
killall -l
killall -V, --versionkillall 发送一个信号给指定名称的进程。默认是 SIGTERM。信号可以用名称(-HUP)或数字(-1)或 -s 指定。killall 永不杀死自己,但可以杀死其他 killall 进程。
选项
-e,--exact
对于很长的名称的命令,需要提供一个明确的匹配。如果长度超过15个字符,全 名可能无法搜索。在这种情况下,killall 会杀死所有匹配前15个字符的命令。使用 -e,这些错误的名称的命令将被跳过。如果同时使用了 -v ,killall 会打印每一个被 跳过的命令。
-I,-ignore-case
命令名大小写不敏感。
-g,--process-group
杀掉进程所属的进程组。每组发送一次信号。
-i,--interactive
杀之前询问是否确认执行。
-l,--list
列出所有信号。
-o,--older-than
匹配这个时间之前开启的进程。时间表示为一个浮点数和一个单位。单位有 s(秒),m(分),h(时),d(天),w(星期),M(月),y(年)。
-q,--quiet
如果没有进程被杀死,不显示信息。
-r,--regexp
使用扩展正则表达式作为进程名的匹配。
-s,--signal
指定信号。
-u,--user
杀死指定用户使用的进程。命令名是可选的。
-v,--verbose
如果信号成功发送,报告。
-V,--version
展示版本信息。
-w,--wait
等待所有被杀的进程结束。killall 每秒检查是否有没有停止的进程。注意,如果信 号被忽略、无效或进程处于僵尸状态,killall 会永远等待下去。
-y,--younger-than
匹配这个时间之后开启的进程。时间表示为一个浮点数和一个单位。单位有 s(秒),m(分),h(时),d(天),w(星期),M(月),y(年)。
-Z,--context
(SELinux 专属) 指定安全上下文:只杀掉用扩展正则表达式描述的安全上下文的 进程。必须在其他命令行参数之后。命令名是可选的。
相关文件
/proc proc 文件系统的位置。
已知BUG
按文件杀死仅适用于在执行过程中保持打开的可执行文件,即不能以这种方式杀死不纯的可执行文件。killall -w 不会检测进程是否消失并在扫描之间被具有相同 PID 的新进程替换。如果进程更改了它们的名称,killall 可能无法正确匹配它们。killall 具有可以在命令行上指定的名称限制。这个数字的大小是无符号长整形数乘以8。对于大多数 32 位系统,限制是 32,类似地,对于 64 位系统,限制通常是 64。
更多推荐
所有评论(0)