linux 进程管理

经典进程管理命令

ps、pstree、top、htop、nice、renice、kill、ulimit、w 和 who 和 whoami、pgrep、fg 和 bg、ipcs

ps

ps参数多,本文章尽量详细进行介绍。最好的方式还是

ps --help all
man ps
info ps

参数

  • -A 列出所有的进程
  • -a 显示同一终端下的进程
  • c 显示进程的真实名
  • -C 进程名字
  • e 显示环境变量
  • f , --forest 显示程序之间的关系
  • -f 全部列出
  • -x 没有控制终端的进程
  • -p pid
  • -u uid
  • -g 显示组的所有进程
  • -H 显示树状结构
  • r 当前终端的进程
  • T 当前终端的所有程序
  • -w 显示加宽可以显示较多的信息
  • -u 以用户为主的进程状态
  • --lines <行数> 每页显示的行数
  • --widths <字符数字> 每页显示的字符数
  • -au 显示较详细的资讯
  • -aux 显示所有包含其他使用者的进程
    -输出格式
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
行程拥有者 pid 占用cpu百分比 占用的记忆体使用率 占用的虚拟记忆体大小 占用的记忆体大小 终端的次要装置号码 该行程的状态: 行程开始时间 执行的时间 所执行的指令
  • 关于上述 STAT 状态码
D R S T Z W < N L +
不可中断的静止 正在执行状态 静止状态 暂停执行 不存在但暂时无法消除 没有足够的记忆体分页可分配 高优先级 低优先级 有记忆体分页分配并锁在记忆体内 (实时系统或捱A I/O) 后台程序

输出格式

  • l 详细输出 包括pid
  • j 工作的格式输出
  • f 更完整的输出

命令实例

常与grep 一起使用 与watch 组成实时监控

ps -A   显示进程信息
ps -u user  显示指定用户信息
ps -ef  显示所有命令 包括终端
ps -l   将目前属于您自己这次登入的 PID 与相关信息列示出来
ps -axu 显示正在内存中的信息
ps -axjf  类似程序树显示
ps -o 指定输出字段

kill 终止进程

格式
kill[参数][进程号]

常用参数

  • -l 信号,若果不加信号的编号参数,则使用“-l”参数会列出全部的信号名称
  • -a 当处理当前进程时,不限制命令名和进程号的对应关系
  • -p 指定kill 命令只打印相关进程的进程号,而不发送任何信号
  • -s 指定发送信号
  • -u 指定用户
    示例
kill -l 列出所有信号名称

说明
只有第9种信号(SIGKILL)才可以无条件终止进程,其他信号进程都有权利忽略。 下面是常用的信号:

  • HUP 1 终端断线

  • INT 2 中断(同 Ctrl + C)

  • QUIT 3 退出(同 Ctrl + \)

  • TERM 15 终止

  • KILL 9 强制终止

  • CONT 18 继续(与STOP相反, fg/bg命令)

  • STOP 19 暂停(同 Ctrl + Z)

先用ps查找进程,然后用kill杀掉

你可能感兴趣的:(linux 进程管理)