Linux命令:查看(PS)/杀死(kill)进程常用操和说明

概述

ps (英文全拼:process status)命令用于显示当前进程的状态,类似于 windows 的任务管理器

可以搭配kill指令随时中断、删除不必要的程序

语法和参数

ps [options] [--help]

常用参数

  1. -A 列出所有的进程
  2. -w 显示加宽可以显示较多的资讯
  3. -au 显示较详细的资讯
  4. -aux 显示所有包含其他使用者的进程
  5. -f 显示UID、PID、PPIP、C、STIME、STIME、TTY 、TIME、 CMD栏位
  6. -a:显示所有终端机下执行的程序,除了阶段作业领导者之外。
  7. a:显示现行终端机下的所有程序,包括其他用户的程序。
  8. -e:此选项的效果和指定"A"选项相同。
  9. e:列出程序时,显示每个程序所使用的环境变量。

au(x) 输出格式(栏目说明)

USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND

栏目说明

  • USER: 行程拥有者,用户名
  • UID 程序被该 UID 所拥有
  • PID: 进程ID(Process ID)
  • PPID· 则是其上级父程序的ID
  • %CPU: 占用的 CPU 使用率,进程的cpu占用率
  • %MEM: 占用的记忆体使用率,进程的内存占用率
  • VSZ: 占用的虚拟记忆体大小,进程所使用的虚存的大小(Virtual Size)
  • RSS: 占用的记忆体大小,进程使用的驻留集大小或者是实际内存的大小,Kbytes字节
  • TTY: 终端的次要装置号码 (minor device number of tty),与进程关联的终端(tty)
  • STAT: 该行程的状态:
    • D: 无法中断的休眠状态 (通常 IO 的进程)
    • R: 正在执行中
    • S: 静止状态
    • T: 暂停执行
    • Z: 不存在但暂时无法消除
    • W: 没有足够的记忆体分页可分配
    • <: 高优先序的行程
    • N: 低优先序的行程
    • L: 有记忆体分页分配并锁在记忆体内 (实时系统或捱A I/O)
  • START: 行程开始时间,进程启动时间和日期
  • TIME: 执行的时间
  • COMMAND:所执行的指令

使用举例

root:# ps aux
USER      PID       %CPU    %MEM    VSZ    RSS    TTY    STAT    START    TIME    COMMAND
smmsp    3521    0.0    0.7    6556    1616    ?    Ss    20:40    0:00    sendmail: Queue runner@01:00:00 f
root    3532    0.0    0.2    2428    452    ?    Ss    20:40    0:00    gpm -m /dev/input/mice -t imps2
htt    3563    0.0    0.0    2956    196    ?    Ss    20:41    0:00    /usr/sbin/htt -retryonerror 0
htt    3564    0.0    1.7    29460    3704    ?    Sl    20:41    0:00    htt_server -nodaemon
root    3574    0.0    0.4    5236    992    ?    Ss    20:41    0:00    crond
xfs    3617    0.0    1.3    13572    2804    ?    Ss    20:41    0:00    xfs -droppriv -daemon
root    3627    0.0    0.2    3448    552    ?    SNs    20:41    0:00    anacron -s
root    3636    0.0    0.1    2304    420    ?    Ss    20:41    0:00    /usr/sbin/atd
dbus    3655    0.0    0.5    13840    1084    ?    Ssl    20:41    0:00    dbus-daemon-1 --system

把所有进程显示出来,并输出到指定文件

把所有进程显示出来,并输出到ps001.txt文件

ps -aux > ps001.txt

查看指定的进程

ps -ef # 显示所有进程信息,连同命令行
ps -ef | grep ssh # ps 与grep 常用组合用法,查找特定进程

UID、PID、PPIP、C、STIME、STIME、TTY 、TIME、 CMD

# ps -ef | grep php
root       794     1  0  2020 ?        00:00:52 php-fpm: master process (/etc/php/7.3/fpm/php-fpm.conf)
www-data   951   794  0  2020 ?        00:24:15 php-fpm: pool www
www-data   953   794  0  2020 ?        00:24:14 php-fpm: pool www
www-data   954   794  0  2020 ?        00:24:29 php-fpm: pool www
...

显示指定用户信息

ps -u root //显示root进程用户信息

杀进程

kill 命令 发送指定的信号到相应进程。不指定型号将发送SIGTERM(15)终止指定进程

kill命令可以带信号号码选项,也可以不带。如果没有信号号码,kill命令就会发出终止信号(15),这个信号可以被进程捕获,使得进程在退出之前可以清理并释放资源

# 杀死进程:kill pid
kill 12345
# 强制杀死进程 kill -KILL pid
kill -KILL 123456
# 彻底杀死进程:kill -9 pid
kill -9 123456

linux 的 kill 命令是向进程发送信号,kill 不是杀死的意思,-9 表示无条件退出,但由进程自行决定是否退出,这就是为什么 kill -9 终止不了系统进程和守护进程的原因。

你可能感兴趣的:(Linux,linux,运维,服务器)