Skip to main content

21.进程管理基本知识

1 ps 命令的使用

ps(process status)是一个用于查看当前进程状况的工具

参数

- aux 打印的格式为`USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND`
- ef 打印格式为`UID PID PPID C STIME TTY TIME CMD`

2 如何找到进程和进程占用的端口?

2.1 如何找到进程?

linux中,启动服务是执行可执行的启动文件来完成一个进程的启动,所以只要知道启动的命令行工具是什么,然后在ps工具在查找出来,就能 找到这个进程的相关信息了。

在窗口A,启动一个服务
wuchuheng@Chuhengs-Mac-mini$ nc -l 4444 # <-- 启动一个服务并监听4444端口

当我们知道我们要找的进程是通过nc命令行启动的,那么就能以nc为关键词在所有的进程列表中把该进程找出来,如:

在窗口B
[root@VM-4-4-centos ~]# ps -aux | grep nc
// highlight-start
root 164760 0.0 0.1 31740 2820 pts/0 S+ 15:56 0:00 nc -l 4444 # <--- 这就是要找的进程了 进程pid为: 164760
// highlight-end
root 164827 0.0 0.0 11812 1108 pts/1 S+ 15:57 0:00 grep --color=auto nc
[root@VM-4-4-centos ~]#

2.1 如何找到被进程占用的端口?

netstatlinux的一个网络查看工具,这个工具能查看哪些端口被哪些进程给占用了。而netstat在打开网络状态时,也能把端口关联的进程pid 一起打印出来,所以借助进程的pid这个关键词,我们就能在已经启用的端口中过虑出我们要查找的进程所绑定的端口号

通过进程pid在netstat中找出进程占用的端口号
[root@VM-4-4-centos ~]# netstat -nap | grep 164760
// highlight-start
tcp 0 0 0.0.0.0:4444 0.0.0.0:* LISTEN 164760/nc
tcp6 0 0 :::4444 :::* LISTEN 164760/nc
// highlight-end
[root@VM-4-4-centos ~]#
tip

或通过启动的命令行也能搜索出来netstat -nap | grep nc