linux 查看哪个程序占用进程多
1)使用lsof命令
lsof是一个非常强大的linux工具,她被用来查找哪些程序使用了那些文件。在linux系统下,基本上所有的东西都可以被当作文件来用。socket当然也是一种文件了。所以lsof可以用来查找谁用了某一个端口。具体方法:
lsof -i :port_number |grep "(LISTEN)"
-i是用来查找和网络相关的文件,":"号是必须的,它是标志你查找的是一个端口。port_number就是你要查找的端口号,譬如你要查找是否 有程序占用了oracle的监听端口1521,就可以使用lsof -i :1521 |grep "(LISTEN)"。如果有程序已经占用了,那么下面打印的第二个字段就是该程序的进程id,第一个字段是进程的名字。
如果只有losf -i :port_number可能会查到很多应用程序,但这些程序实际并没有占用你指定的端口,这些端口只是连接到本机器或者别的机器的该端口。所以要grep "(LISTEN)“,因为一个端口只可能被一个程序占用的,所以这种方法是可靠的。
2)使用netstat 命令
大家一定对这个命令比较熟悉了,可能你从没有想到用到来查找哪一个程序的占用了指定的端口。但是netstat -an 的确提供了这种功能。所以有问题了一定要想到先去查找man手册,不过说实话,某些man手册写得让中国人看不懂,那没有办法了,就googe或者 baidu一下吧。
执行man netstat命令,你会发现netstat 提供了'-p'的选项,这个选项的功能是告诉你哪个程序占用了该端口,但是她提供的形式比较古怪是以pid/process_name提供的。pid当然 是进程id了,process_name是进程的命令,中间以'/'号分隔。
和上面的原因一样,我们只查找listen的端口,netstat 给我们提供了-l的选项,这个选项不是默认的选项。
下面以1521端口来看怎么查找到该程序,我们使用下面的命令:
netstat -lnp|awk 'BEGIN{prt=":1521$"}{if ($4 ~ prt) print $0}'
在这里使用awk来匹配第4个字段的模式是为了避免误判。
如果是10个进程,K=10,如果是最高的三个,K=3
说明:ps -aux中(a指代all——所有的进程,u指代userid——执行该进程的用户id,x指代显示所有程序,不以终端机来区分)
ps -aux的输出格式如下:
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 1 0.0 0.0 19352 1308 ? Ss Jul29 0:00 /sbin/init
Linux下查看某一进程所占用内存的方法
在Linux系统中,要了解某一进程所占用的内存,首先可以通过执行ps命令来查找目标进程,例如输入"ps -ef | grep kafka",这将显示出kafka进程的详细信息,从中找到进程id,如2913。接着,你可以利用top命令的-p选项,直接指定进程id,如"top -p 2913",这样可以实时查看该进程的CPU和内存占用情况,...
查看Linux 系统中进程和用户的内存使用情况
在Linux系统中,监控内存使用情况是管理资源的关键。以下是一些实用的命令,帮助你深入了解系统中进程和用户的内存占用情况。首先,对于查看进程的内存使用,top命令是一个强大的工具。启动top后,按Shift + M,可以按内存占用百分比对进程进行排序。%MEM列将显示每个进程对内存的占用情况,顶部的进程通常占用...
linux 查看文件被哪个进程占用
在Linux系统中,想要了解一个进程打开了哪些文件,可以使用以下方法。第一种方法涉及直接获取进程ID,然后查看其对应的文件描述符。首先,使用<pidof programe-name或ps -aux|grep programe-name命令找到目标进程ID,之后切换目录至\/proc\/$PID\/fd,这里的文件描述符指向了该进程打开的文件,通过ls -l命令...
linux 下怎么查看一个进程占
在Linux环境下,查看一个进程占用内存的步骤如下:首先,打开系统工具,可以通过点击桌面左上角的应用程序,然后选择系统工具的选项,如图所示。这个操作有助于你快速定位到管理工具。进入系统工具后,选择“系统终端”选项,这是查看和管理进程的重要界面,如图所示。通过终端,你可以直接执行命令来获取系统...
查看哪个进程占用文件
可以使用`lsof`命令查看哪个进程占用文件。解释:1. 使用lsof命令:`lsof`是一个在Linux和Unix系统上常用的命令,用于显示当前系统打开的文件和进程信息。通过该命令,我们可以找到哪些进程正在使用特定的文件。2. 命令格式:使用`lsof`命令时,通常的格式是`lsof 文件名`。例如,要查看哪个进程正在占用名...
LINUX系统下查看JAVA的哪个线程占用CPU高
1.先定位占用cpu高的进程 top 2.使用以下命令 ps p 14766 -L -o pcpu,pid,tid,time,tname,stat,psr | sort -n -k1 -r 其中14766是刚才1中cpu占用率高的进程pid 3.2.4 32525 32537 01:58:41 ? Sl 6 0.8 32525 1771 00:43:12 ? Sl 0 0.8 32525 1769 00:39...
Linux 如何查看当前占用CPU或内存最多的K个进程
用TOP 命令 (Cpus):分别表示了 CPU 当前的使用率;(Mem): 分别表示了内存总量、当前使用量、空闲内存量、以及缓冲使用中的内存量
如何在Linux系统中察看进程占用的资源,Linux高手请进!
命令:du -sh \/log 查询\/log目录的磁盘占用 4、网络占用率 主要是检查进程的NIC的读写情况 工具:nmon nmon是 IBM 提供的免费的在AIX与各种Linux操作系统上广泛使用的监控与分析工具。nmon运行CPU利用率不会超过2%。针对不同的操作系统版本,nmon有相应版本的程序。nmon可以监控网络IO的读写速率、CPU...
linux中如何查看某个文件被哪些进程占用
查看进程在Linux要检查那一个进程(process)占用特定埠号,可以用netstat或lsof来做,例如想列出所有开启的埠号,可以netstat指令:假如只想输出某个文件的进程,可以加上grep过滤:或者只想输出占用某个端口的进程,可以加上grep过滤:上面可以看到是mongod占用端口966,进程的pid是966 杀死进程通常有两个...
linux怎么查看哪个进程占用的内存
● RSS,进程占用的物理内存的总数量,以K为单位。● TTY,进程相关的终端名。● STAT,进程状态,用(R--运行或准备运行;S--睡眠状态;I--空闲;Z--冻结;D--不间断睡眠;W-进程没有驻留页;T停止或跟踪。)这些字母来表示。● START,进程开始运行时间。● TIME,进程使用的总CPU时间。● ...