目录

Linux进程管理笔记

查看Linux端口占用,并kill掉相关进程

话不多说,本文介绍Linux常规操作:查看端口占用进程,根据PID kill掉相关进程。另外补充:根据程序名查看进程PID。

首先,两条命令,lsof命令和netstat命令。

方式一:lsof命令

1、查看占用端口进程的PID:

1
lsof -i:{端口号}

./1.png

2、根据PID kill掉相关进程:

1
2
3
kill -9 {PID} #直接杀掉
#或
kill -15 {PID} #接收完发送端的数据再杀掉,类似TCP/IP的关闭

./2.png

方式二:netstat命令

1、查看占用端口进程的PID:

1
netstat -tunlp|grep {port}

./3.png

2、kill方法如上。

1
2
3
kill -9 {PID} #直接杀掉
#或
kill -15 {PID} #接收完发送端的数据再杀掉,类似TCP/IP的关闭

补充1:根据程序名查看对应的PID

1、用ps命令(zb专用):

1
2
3
4
ps -ef | grep {programName}
kill -9 {PID} #直接杀掉
#或
kill -15 {PID} #接收完发送端的数据再杀掉,类似TCP/IP的关闭

查看详细内存占用

1
ps aux -u root | grep {programName}

2、用pgrep命令:

pgrep命令的p表明了这个命令是专门用于进程查询的grep。

1
2
3
4
pgrep {programName}
kill -9 {PID} #直接杀掉
#或
kill -15 {PID} #接收完发送端的数据再杀掉,类似TCP/IP的关闭

补充2:根据PID查看对应的进程

1
ps -aux |grep -v grep|grep {$PID}

查找进程执行的文件

1
ps aux | grep 4874

确定进程所在的目录

1
ll /proc/4874;

其他对应信息

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
ls -l /proc/4847
# 以下是/proc目录中进程4847的信息
# /proc/4847 pid为N的进程信息
# /proc/4847/cmdline 进程启动命令
# /proc/4847/cwd 链接到进程当前工作目录
# /proc/4847/environ 进程环境变量列表
# /proc/4847/exe 链接到进程的执行命令文件
# /proc/4847/fd 包含进程相关的所有的文件描述符
# /proc/4847/maps 与进程相关的内存映射信息
# /proc/4847/mem 指代进程持有的内存,不可读
# /proc/4847/root 链接到进程的根目录
# /proc/4847/stat 进程的状态
# /proc/4847/statm 进程使用的内存的状态
# /proc/4847/status 进程状态信息,比stat/statm更具可读性