设为首页 - 加入收藏 ASP站长网(Aspzz.Cn)- 科技、建站、经验、云计算、5G、大数据,站长网!
热搜: 数据 手机 公司
当前位置: 首页 > 服务器 > 搭建环境 > Windows > 正文

8个用于有效地管理进程的Linux命令(4)

发布时间:2018-09-19 10:11 所属栏目:117 来源:Alan Formy-duval
导读:在管理进程,特别是终止进程时,正确确定 PID 是非常重要。此外,如果以这种方式使用 top ,每当这些进程中的一个停止或一个新进程开始时, top 都需要被告知有新的进程。 终止进程 KILL 有趣的是,没有 stop 命令

在管理进程,特别是终止进程时,正确确定 PID 是非常重要。此外,如果以这种方式使用 top,每当这些进程中的一个停止或一个新进程开始时,top 都需要被告知有新的进程。

终止进程 

KILL

有趣的是,没有 stop 命令。在 Linux 中,有 kill 命令。kill 用于向进程发送信号。最常用的信号是“终止”(SIGTERM)或“杀死”(SIGKILL)。然而,还有更多。下面是一些例子。完整的列表可以用 kill -L 显示。

  1.  1) SIGHUP       2) SIGINT       3) SIGQUIT      4) SIGILL       5) SIGTRAP
  2.  6) SIGABRT      7) SIGBUS       8) SIGFPE       9) SIGKILL     10) SIGUSR1
  3. 11) SIGSEGV     12) SIGUSR2     13) SIGPIPE     14) SIGALRM     15) SIGTERM

注意第 9 号信号是 SIGKILL,通常,我们会发出比如 kill -9 20896 这样的命令。默认信号是 15,这是 SIGTERM。请记住,许多应用程序都有自己的停止方法。Nginx 使用 -s 选项传递信号,如 stopreload。通常,我更喜欢使用应用程序的特定方法来停止操作。然而,我将演示用 kill 命令来停止 Nginx 进程 20896,然后用 pgrep 确认它已经停止。PID 20896 就不再出现。

  1. alan@workstation:~$ kill -9 20896
  2.  
  3. alan@workstation:~$ pgrep nginx
  4. 20881
  5. 20882
  6. 20895
  7. 22123 

PKILL

命令 pkill 类似于 pgrep,因为它可以按名称搜索。这意味着在使用 pkill 时必须非常小心。在我的 Nginx 示例中,如果我只想杀死一个 Nginx 实例,我可能不会选择使用它。我可以将 Nginx 选项 -s stop 传递给特定的实例来消除它,或者我需要使用 grep 来过滤整个 ps 输出。

  1. /home/alan/web/prod/nginx/sbin/nginx -s stop
  2. /home/alan/web/prod/nginxsec/sbin/nginx -s stop

如果我想使用 pkill,我可以包括 -f 选项,让 pkill 过滤整个命令行参数。这当然也适用于 pgrep。所以,在执行 pkill -f 之前,首先我可以用 pgrep -a 确认一下。

  1. alan@workstation:~$ pgrep -a nginx
  2. 20881 nginx: master process ./nginx -p /home/alan/web/prod/nginxsec
  3. 20882 nginx: worker process
  4. 20895 nginx: master process nginx
  5. 20896 nginx: worker process

我也可以用 pgrep -f 缩小我的结果。pkill 使用相同参数会停止该进程。

  1. alan@workstation:~$ pgrep -f nginxsec
  2. 20881
  3.                                            
  4. alan@workstation:~$ pkill -f nginxsec

pgrep(尤其是 pkill)要记住的关键点是,您必须始终确保搜索结果准确性,这样您就不会无意中影响到错误的进程。

大多数这些命令都有许多命令行选项,所以我总是建议阅读每一个命令的 man 手册页。虽然大多数这些命令都存在于 Linux、Solaris 和 BSD 等平台上,但也有一些不同之处。在命令行工作或编写脚本时,始终测试并随时准备根据需要进行更正。

【编辑推荐】

  1. Linux的10个最危险的命令
  2. Linux中find命令用法全汇总,看完就没有不会用的!
  3. 如何在Linux中压缩和解压缩文件
  4. Filelight:可视化查看Linux系统上的磁盘使用情况
  5. 如何从Linux的文件管理器中加密文件
【责任编辑:庞桂玉 TEL:(010)68476606】
点赞 0

(编辑:ASP站长网)

网友评论
推荐文章
    热点阅读