Mac 命令
应用场景:
- 开发过程中,你在本地启了一个项目运行之后地址是http://192.1.1.1:8080
- 你把这个地址给了其他的同事,让他们测试,所以这个地址最好今天之内不要变了,要不还得重复沟通,很麻烦。
- 你改完一部分代码,需要重启项目,
- 手动关闭了vscode的终端,重新运行项目,发现使用的端口变成了8081,地址更改了,为了避免麻烦,你需要改回8080端口
- 这个时候就需要使用命令行工具,查看是哪个进程占用了你的8080端口,关掉相应进程,并重新运行项目
操作步骤:
查看端口占用情况,谁用了我的8080端口?
lsof -i:port
lsof -i:8080
或者一步到位,直接查看8080端口,获取pid并杀死进程
lsof -i tcp:8080
得到一个占用8080端口的进程的pid,使用或者pid杀死进程。
kill pid
总结:查看端口占用
mac
lsof -i:port
lsof -i:8080
netstat -antp | grep port
netstat -antp | grep 8080
window平台
netstat -aon | findstr port
netstat -ano | findstr 8080
由此可见,查看端口命令,mac有两个,window有一个,那么lsof和netstat有什么区别呢?
- netstat 显示各种网络详细信息。很明显是network status 之类的意思。
- lsof(list open files) 类似在mac下面列出文件目录,因为linux系统中任何事物都是以文件的形式存在的,通过文件不仅可以访问常规数据,还可以访问网络连接和硬件。查看端口占用,实际上是查询网络连接,即tcp连接的端口号。