ps

1
2
3
4
5
# 查询正在运行的进程信息
ps -ef

# 查询进程 ID
pgrep -l php

top

1
top

一些常用的 top命令操作指令

  • q: 退出top命令
  • : 立即刷新
  • s: 设置刷新时间间隔
  • c: 显示命令完全模式
  • t: 显示或隐藏进程和 CPU 状态信息
  • m: 显示或隐藏内存状态信息
  • l: 显示或隐藏 uptime 信息
  • f: 增加或减少进程显示标志
  • S: 累计模式,会把已完成或退出的子进程占用的 CPU 时间累计到父进程的 MITE+
  • P: 按 %CPU 使用率排行
  • T: 按 MITE+ 排行
  • M: 按 %MEM 排行
  • u: 指定显示用户进程
  • r: 修改进程renice值
  • k: 关闭指定进程
  • i: 只显示正在运行的进程
  • W: 保存对top的设置到文件^/.toprc,下次启动将自动调用toprc文件的设置。
  • h: 帮助命令。
  • q: 退出

lsof

  • -a 列出打开文件存在的进程
  • -c<进程名> 列出指定进程所打开的文件
  • -g 列出GID号进程详情
  • -d<文件号> 列出占用该文件号的进程
  • +d<目录> 列出目录下被打开的文件
  • +D<目录> 递归列出目录下被打开的文件
  • -n<目录> 列出使用NFS的文件
  • -i<条件> 列出符合条件的进程。(4、6、协议、:端口、 @ip )
  • -p<进程号> 列出指定进程号所打开的文件
  • -u 列出UID号进程详情
  • -h 显示帮助信息
  • -v 显示版本信息

sudo 执行效果更好

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
# 查找某个文件相关的进程
lsof /bin/bash

# 列出某个用户打开的文件信息
lsof -u fang

# 列出某个程序进程所打开的文件信息
lsof -c mysql

# 通过某个进程号显示该进程打开的文件
lsof -p 11968

# 列出所有的网络连接
lsof -i

# 列出所有 tcp 网络连接信息
lsof -n -i tcp

# 查看端口占用的进程状态
lsof -i:3306

# 列出某个用户的所有活跃的网络端口
lsof -a -u fang -i