首页 > 解决方案 > 在 shell 脚本中查找正在运行的进程

问题描述

我已经使用 putty 关闭了服务器上的所有服务。如何使用 grep 命令找到仍在运行的所有服务?另外,如何使用进程 ID 终止这些服务?

标签: shellputty

解决方案


您可以使用以下命令:

  1. 列出所有正在运行的进程:

    ps -ef
    
  2. 列出特定用户的所有进程:

    ps -u userId
    
  3. 列出特定进程:

    ps -ef | grep processName
    
  4. 列出由特定用户运行的特定进程:

    ps -u userId | grep processName
    

现在杀死一个进程:

当您使用ps命令时,它的列表如下:

UID    PID  PPID   C    STIME TTY         TIME CMD
user1  398     1   0   Mar 08 ?        1331:39 /usr/sbin/nscd
user2  1388    1   0   Mar 08 ?          11:52 /usr/lib/netsvc/yp/ypbind

现在要杀死一个进程,您需要PID这里的进程 ID。

现在杀死用户运行的进程user1

kill -9  398  ( sure kill - Not safe)
kill -1  398  ( safe kill - let the process to complete its talk)
kill -15 398  ( safe kill like -1)
kill -8  398  ( Safe kill like -1)

希望这会帮助你。


推荐阅读