简介
- ps命令
linux ps命令 详解
ps
命令用于显示系统中当前运行的进程信息。它提供了关于进程的详细信息,包括进程ID(PID)、CPU利用率、内存占用等。以下是一些常用的 ps
命令选项和用法:
基本用法:
显示当前用户的所有进程:
1
ps
这将显示当前用户的所有进程的基本信息。
显示所有用户的所有进程:
1
ps aux
使用
aux
选项可以显示所有用户的所有进程,包括系统进程。
选项和过滤:
显示详细信息:
1
ps -ef
使用
-ef
选项可以显示更详细的信息,包括进程的父进程ID、启动时间等。以树状结构显示进程:
1
ps auxf
使用
auxf
选项以树状结构显示进程,显示进程之间的父子关系。按内存使用排序:
1
ps aux --sort=-%mem
使用
--sort=-%mem
选项可以按内存使用的百分比降序排序显示进程。显示进程的线程信息:
1
ps -eLf
使用
-L
选项可以显示进程的线程信息。显示特定用户的进程:
1
ps -u username
使用
-u
选项可以显示特定用户的进程。按进程名过滤显示:
1
ps -C process_name
使用
-C
选项可以按进程名过滤显示。
更多选项:
显示进程树:
1
pstree
使用
pstree
命令可以以树状结构显示进程树。以用户格式显示进程:
1
ps -eo user,pid,%cpu,%mem,cmd
使用
-eo
选项可以以用户定义的格式显示进程信息,这里列出了用户、进程ID、CPU利用率、内存占用和命令。查看进程的详细信息:
1
ps -p pid -o pid,ppid,uid,gid,cmd
使用
-p
选项指定进程ID,并使用-o
选项指定要显示的信息。
ps
命令提供了广泛的选项,使得你可以根据不同的需求查看和分析进程信息。根据实际情况选择合适的选项,可以更好地了解系统中运行的进程。
linux ps命令 常用技巧
以下是一些在使用 ps
命令时常用的技巧和选项,可以更灵活地查看和管理进程信息:
1. 查看指定用户的进程:
1 | ps -u username |
使用 -u
选项可以显示特定用户的进程。将 username
替换为要查看的用户名。
2. 按进程名过滤显示:
1 | ps -C process_name |
使用 -C
选项可以按进程名过滤显示,只显示指定进程名的进程。
3. 显示所有进程树:
1 | pstree |
使用 pstree
命令以树状结构显示所有进程的父子关系。
4. 按 CPU 利用率排序显示进程:
1 | ps aux --sort=-%cpu |
使用 --sort=-%cpu
选项可以按 CPU 利用率降序排序显示进程。
5. 以用户定义格式显示进程信息:
1 | ps -eo user,pid,%cpu,%mem,cmd |
使用 -eo
选项以用户定义的格式显示进程信息,列出了用户、进程ID、CPU利用率、内存占用和命令。
6. 显示线程信息:
1 | ps -eLf |
使用 -L
选项显示进程的线程信息。
7. 显示所有进程的详细信息:
1 | ps -ef |
使用 -ef
选项显示所有进程的详细信息,包括进程的父进程ID、启动时间等。
8. 显示所有进程的详细信息(BSD格式):
1 | ps aux |
使用 aux
选项以 BSD 格式显示所有进程的详细信息。
9. 显示进程的线程数:
1 | ps -eT |
使用 -T
选项显示进程的线程数。
10. 显示所有进程的信息(包括僵尸进程):
1 | ps -e |
使用 -e
选项显示所有进程的信息,包括僵尸进程。
11. 显示进程的状态信息:
1 | ps -o pid,state,cmd |
使用 -o
选项显示进程的状态信息,包括进程ID、状态和命令。
12. 显示所有进程的内存占用情况:
1 | ps aux --sort=-%mem |
使用 --sort=-%mem
选项按内存占用降序排序显示所有进程的信息。
这些技巧和选项可以帮助你更灵活地使用 ps
命令,根据具体的需求查看和管理进程信息。根据情况选择合适的选项,可以更方便地进行系统监控和故障排查。
ps
- ps命令用于报告当前系统的进程状态,可以搭配kill指令随时中断,删除不必要的程序。
- ps明星是最基本的同时也是非常强大的进程查看命令,使用该命令可以确定有哪些进程正在运行和运行的状态,进程是否结束,进程有没有僵死,哪些进程占用了过多的资源等等
- 参数
a
: 显示当前终端下的所有进程信息,包括其他用户的进程u
: 使用以用户为主的格式输出进程信息x
: 显示当前用户在所有终端下的进程
- 字段解释
USER
: 启动该进程的用户账号名称PID
: 该进程的ID号,在当前系统中是唯一的%CPU
: CPU占用的百分比%MEM
: 内存占用的百分比VSZ
: 占用虚拟内存(swap空间)的大小RSS
: 占用常驻内存(物理内存)的大小TTY
: 该进程在哪个终端上运行."?"
表示未知或不需要终端STAT
: 显示了进程当前的状态S , interruptible sleep (waiting for an event to complete
: 休眠R , running or runnable (on run queue)
: 运行Z , defunct("zombie") process, terminated but not reaped by its parent
: 僵死, 对于僵死状态的进程应该手动终止< , high-priority (not nice to other users)
: 高优先级N , low-priority (nice to other users)
: 低优先级s , is a session leader
: 父进程+ , is in the foreground process group
: 前台进程l , is multi-threaded(using CLONE_THREAD, like NPTL pthreads do)
:多线程
START
: 启动该进程的时间TIME
: 该进程占用CPU的时间COMMAND
: 启动该进程的命令的名称
- 参数
e
: 显示系统内的所有进程信息l
: 使用长(long)格式显示进程信息f
: 使用完整的(full)格式显示进程信息