命令与脚本:进程、服务与资源 · 查找进程与打开的文件
命令与脚本:进程、服务与资源
查找进程与打开的文件
先用 ps、pgrep 定位进程,再用 lsof 查看打开的文件;综合仪表盘集中在后,便于按观察深度选择。
ps · 提供正在运行的进程的信息
更多信息:https://manned.org/ps。
- 列出所有正在运行的进程:
bash
ps aux- 列出所有正在运行的进程,包括完整的命令字符串:
bash
ps auxww- 查找与字符串匹配的进程:
bash
ps aux | grep {{字符串}}- 以 extra full 格式列出当前用户的所有进程:
bash
ps {{[-u|--user]}} $(id {{[-u|--user]}}) -F- 以树形方式列出当前用户的所有进程:
bash
ps {{[-u|--user]}} $(id {{[-u|--user]}}) f- 获取一个进程的父进程 ID:
bash
ps {{[-o|--format]}} ppid= {{[-p|--pid]}} {{进程id}}- 按内存使用量对进程进行排序:
bash
ps --sort sizepgrep · 按名称查找进程
- 查找命令行字符串匹配的进程,并输出其 PID:
bash
pgrep {{进程名称}}- 以长格式([l]ong output)输出 PID 和进程名称:
bash
pgrep -l {{进程名称}}- 按完整([f]ull)参数列表匹配进程,而不只匹配进程名称:
bash
pgrep -f "{{进程名称}} {{参数}}"- 以列表([l]ist)形式输出每个匹配进程的 PID 和完整([f]ull)参数列表:
bash
pgrep -fl "{{进程名称}}"- 查找由指定用户([u]ser,有效 UID)运行的进程:
bash
pgrep -u {{用户名}} {{进程名称}}- 只输出最新([n]ewest,最近启动)的匹配进程:
bash
pgrep -n {{进程名称}}lsof · 列出打开的文件和相应的进程
注意:列出其他人打开的文件需要 root 权限(或 sudo)。 更多信息:https://manned.org/lsof。
- 查找打开了给定文件的进程:
bash
lsof {{路径/到/文件}}- 查找打开了本地互联网端口的进程:
bash
lsof -i :{{端口}}- 仅输出进程 ID (PID):
bash
lsof -t {{路径/到/文件}}- 列出给定用户打开的文件:
bash
lsof -u {{用户名}}- 列出给定命令或进程打开的文件:
bash
lsof -c {{进程或命令的名称}}- 列出特定进程打开的文件(给定其 PID):
bash
lsof -p {{pid}}- 列出目录中打开的文件:
bash
lsof +D {{路径/到/目录}}- 查找正在监听本地 IPv6 TCP 端口的进程,不转换网络或端口号:
bash
lsof -i6TCP:{{端口}} -sTCP:LISTEN -n -Phtop · 显示正在运行的进程的动态实时信息。top 的增强版
另请参阅:
top,atop,glances,btop,btm。 更多信息:https://manned.org/htop。
- 启动
htop:
bash
htop- 启动
htop, 显示指定用户拥有的进程:
bash
htop {{[-u|--user]}} {{用户名}}- 以树形视图显示进程的层级关系,展示父子进程之间的关系:
bash
htop {{[-t|--tree]}}- 使用指定的
sort_item对进程排序(使用htop --sort help获取可用选项):
bash
htop {{[-s|--sort]}} {{sort_item}}- 以指定的更新间隔启动
htop, 以十分之一秒为单位(即 50 = 5 秒):
bash
htop {{[-d|--delay]}} {{50}}- 运行
htop时查看交互式命令:
bash
<?>- 切换到不同的标签:
bash
<Tab>- 显示帮助:
bash
htop {{[-h|--help]}}btop · 显示有关 CPU、内存、磁盘、网络和进程的信息的资源监视器
bpytop的 C++ 版本。 另请参阅:btm,glances,atop,htop,top,sensors。 更多信息:https://github.com/aristocratos/btop#command-line-options。
- 启动
btop:
bash
btop- 使用指定预设启动
btop:
bash
btop {{[-p|--preset]}} {{0..9}}- 使用 16 种颜色和 TTY 友好的图形符号在 TTY 模式下启动
btop:
bash
btop {{[-t|--tty]}}- 在 256 色模式而不是 24 位颜色模式下启动
btop:
bash
btop {{[-l|--low-color]}}- 设置更新速率为 500 毫秒:
bash
btop {{[-u|--update]}} 500- 退出
btop:
bash
<q>- 显示帮助:
bash
btop {{[-h|--help]}}btm · 命令行top的替代品
比
top更轻便,支持跨平台、图表更丰富。 另请参阅:btop,glances,atop,htop,top,sensors。 更多信息:https://clementtsang.github.io/bottom/nightly/#usage-and-configuration。
- 展示默认布局(cpu, 内存,温度,磁盘,网络和 进程):
bash
btm- 开启基础模式,关闭图表和高亮(接近于
top):
bash
btm {{[-b|--basic]}}- 将图表中的小点换成大点:
bash
btm {{[-m|--dot_marker]}}- 展示电池充电和健康状态:
bash
btm --battery- 设置图表刷新间隔和留存数据的时长:
bash
btm {{[-r|--rate]}} 250 {{[-t|--default_time_value]}} 30000bpytop · 一个资源监视器,显示有关 CPU、内存、磁盘、网络和进程的信息
bashtop的 Python 版本。 更多信息:https://github.com/aristocratos/bpytop#command-line-options。
- 运行 bpytop:
bash
bpytop- 以最小模式启动,不显示内存和网络框:
bash
bpytop -m- 切换最小模式:
bash
<m>- 搜索正在运行的程序或进程:
bash
<f>- 修改设置:
bash
<M>- 显示版本:
bash
bpytop -vglances · 一个跨平台的系统监控工具
另请参阅:
htop,atop,top,btm,btop。 更多信息:https://nicolargo.github.io/glances/。
- 在终端中运行:
bash
glances- 以网页服务器模式运行,在浏览器中查看结果:
bash
glances {{[-w|--webserver]}}- 以服务器模式启动,允许其他 glances 客户端连接以查看数据:
bash
glances {{[-s|--server]}}- 作为客户端连接到 glances 服务器:
bash
glances {{[-c|--client]}} {{主机名}}- 在(网页)服务器模式下启用密码保护:
bash
glances {{[-s|--server]}} --password- 退出Glances:
bash
<q>- 显示帮助:
bash
glances {{[-h|--help]}}继续阅读
- 文件与文本处理完整实践与解答
- 文件与文本处理上手与对象
- 文件与文本处理任务与配置