系统中端口与进程之间的关联

  一、根据进程查端口号  

  首先在开始菜单的“运行”框中输入“cmd.exe”进入命令提示符窗口,先键入“tasklist”命令将列出系统正在运行的进程列表,把你要查的进程所对应的“PID”号记下或复制。如下图: 


  需要注意的是,相同的进程 图像名 每次运行的“PID”号一般都不会相同,所以一旦该进程重启后,该“PID”号就会改变,这就需要重新查看。 

  把进程的PID号记下后,接下来就用这个PID号把该进程所开的端口显示出来了。 

  例如我们要看进程“QQ.exe”(上图中得知该进程ID号为:1332)开启了那些端口,在当前的命令符下继续键入“netstat -ano | findstr 1332”命令,其中“netstat -ano”参数表示以数字形式显示所有活动的TCP连接以及计算机正在侦听的TCP、UDP端口,并且显示对应的进程ID PID 号;“|findstr 1332”表示查找进程PID为“1332”的TCP连接以及TCP、UDP端口的侦听情况(在实际应用中,需要把你刚才记下或复制的PID号替换掉这里的1332)。按“回车”键后,就会显示出该进程所开的端口号。如下图: 

  从上图中我们可以明显地看出,PID为“1332”的进程所开启的所有端口,如果此时没有任何提示信息返回,则说明该进程没有开启任何端口。 

   二、根据端口号查进程  

  在命令提示符窗口中输入“netstat -ano”命令,列出系统当前的端口列表,该命令的作用已在上面提过了。 

  -o参数的作用主要是显示各端口对应的进程PID号,现在把你要查的端口对应的进程PID号记下或复制。 

  然后在命令提示符下继续输入“tasklist /fi ″PID eq 788 ″”(在实际应用中,需要把你复制或记下的PID号替换掉这里的788), 

  这行语句“/fi”参数表示在“tasklist”中筛选,而“PID eq 788”则是指定筛选的条件,按“回车”键后,就会显示出端口对应的进程。 

  可以看出,PID号为“788”所对应的进程为“svchost.exe”,如果你查的端口没有关联任何进程的话, 

  此时就会返回“没有运行带有指定标准的任务”的提示信息。 

 三、查出进程对应的程序 

  知道了端口和进程的关联后,如何再进一步查出该进程是那个软件或程序的进程呢? 

  下面的操作就需要用到Windows 2000(Server或Professional版都可以)安装光盘中的一个工具。 

  首先在安装光盘的“SupportTools”目录下,用解压软件打开“support.cab”压缩包,找到“tlist.exe”文件,将此文件释放到任一目录, 

  如“D:Support”。然后在命令提示符窗口中切换到此目录,运行“tlist.exe”命令, 

  把要查的进程对应的PID号记下或复制(第一列就是进程的PID号), 

  然后继续输入“tlist.exe 2012”命令(你输入的时候,需要将刚才记下的PID号替换掉这里的2012), 

  “CmdLine ”后面显示的就是该进程对应的软件所在的目录。 

  除此之外,返回信息中还列出了该进程所调用的文件,得到了这些信息就可以很容易查出进程对应的程序了。 

  假如想关闭某个进程,可把该进程的PID号记下,在命令提符下输入“taskkill /pid 2400” 2400是PID号) 

  就可以将PID号为2400的进程关闭,如果要强制关闭该进程,只须在这条命令的后面加个“/f”参数即可。 

  或者用ntsd -c q -p pid (实际应用中,pid要换成实际的pid号)

你可能感兴趣的:(综合)