linux里kill命令怎么用,在Linux中,如何使用kill命令

Linux是一个伟大和先进的操作系统,但是它不是完美的,一段时间后,一些应用程序可能开始运行不正常,无法响应或开始消耗大量系统资源,无法响应的应用程序无法重新启动,因为进程永远不会完全关闭。唯一的解决方案是重新启动系统或终止应用程序进程。

有几个程序允许你终止错误进程,其中kill是最常用的。

kill 命令

使用type命令显示系统上包含kill的所有位置:type -a killkill is a shell builtin

kill is /bin/kill

上面的输出告诉shell内置的优先级高于独立可执行文件,每当键入kill时都会使用它,如果要使用二进制文件,请键入文件/bin/kill的完整路径,在本文中,使用Bash内置,

kill命令的语法采用以下格式:kill [OPTIONS] [PID]...

kill命令向指定的进程或进程组发送信号,使它们根据信号操作,未指定信号时,它默认为-15 ( -术语),

最常用的信号是:1 ( HUP ) C#重新加载进程9 ( kill ) C#杀死进程15 ( TERM ) C#正常停止进程

要获取所有可用信号的列表,请使用-l选项调用该命令:kill -l> > >

可以通过三种不同的方式指定信号:使用数字( -1或-s 1 )使用" SIG" 前缀( -SIGHUP或-s SIGHUP )没有" SIG" 前缀( e,g,-HUP或-s HUP )

以下命令彼此等效:kill -1 PID_NUMBERkill -SIGHUP PID_NUMBERkill -HUP PID_NUMBER

提供给kill命令的PID可以为下列值之一:如果PID大于零,就将信号发送到ID等于PID的进程如果PID等于零,就信号将发送到当前进程组中的所有进程,换句话说,信号被发送到所有属于调用shell的GID的进程kill命令,使用ps -efj命令查看进程组ID ( ID )如果PID等于-1,就将信号发送到与调用命令的用户有相同UID的所有进程,如果调用用户为root,就信号将发送到除init和kill进程本身之外的所有进程如果PID小于-1,则向进程组eq中所有进程发送信号,GID等于PID的绝对值

常规用户可以向自己的进程发送信号,但不能向属于其他用户的进程发送信号,而root用户可以向其他用户的进程发送信号,

使用kill命令终止进程

要使用kill命令终止或终止进程,首先需要找到进程ID号(PID)。您可以使用诸如top,ps,pidof和pgrep之类的不同命令来执行此操作。

假设Firefox浏览器已经无响应,你需要杀死Firefox进程,要查找浏览器的PID,请使用pidof命令:pidof firefox

命令将打印所有Firefox进程的ID:6263 6199 6142 6076

一旦知道进程号,就可以通过发送TERM信号来终止所有进程:kill -9 2551 2514 1963 1856 1771

无需搜索PID,然后终止进程,你可以将上面的命令组合成一个:kill -9 $(pidof firefox)

使用kill命令重新加载进程

kill的另一个常见例子是发送HUP信号,它告诉进程重新加载它设置。

例如,要重新加载Nginx,您需要向主进程发送信号。Nginx主进程的进程ID可以在nginx . pid文件中找到,这个文件通常位于/var/run目录中。

使用cat命令查找主PID:cat /var/run/nginx.pid30251

找到主PID后,键入以下命令重新加载Nginx设置:sudo kill -1 30251

上面的命令必须以root用户或具有sudo特权的用户身份运行。

结束语

kill命令用于向进程发送信号,最常用的信号是SIGKILL或-9,它终止给定进程。

如果你有问题或反馈,请留下评论。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值