40 lines
966 B
Python
40 lines
966 B
Python
|
|
#coding:utf-8
|
||
|
|
import socket
|
||
|
|
import threading
|
||
|
|
import time
|
||
|
|
import public
|
||
|
|
|
||
|
|
ports = []
|
||
|
|
|
||
|
|
class SkPort(threading.Thread):
|
||
|
|
def __init__(self,ip,port):
|
||
|
|
threading.Thread.__init__(self)
|
||
|
|
self.ip = ip
|
||
|
|
self.port = port
|
||
|
|
def run(self):
|
||
|
|
sk = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
|
||
|
|
sk.settimeout(10)
|
||
|
|
try:
|
||
|
|
sk.connect((self.ip,self.port))
|
||
|
|
tmp = {}
|
||
|
|
tmp['port'] = self.port
|
||
|
|
tmp['process'] = public.ExecShell("lsof -i :"+str(self.port)+"|grep -v COMMAND|awk '{print $1}'")[0].split('\n')[0].strip();
|
||
|
|
ports.append(tmp);
|
||
|
|
except Exception,e:
|
||
|
|
#print e
|
||
|
|
pass
|
||
|
|
sk.close()
|
||
|
|
def main():
|
||
|
|
ip = '127.0.0.1';
|
||
|
|
sport = 1
|
||
|
|
eport = 65535
|
||
|
|
for port in range(sport,eport+1):
|
||
|
|
item = (ip,port)
|
||
|
|
t = SkPort(ip,port)
|
||
|
|
t.start()
|
||
|
|
|
||
|
|
|
||
|
|
print str(ports)
|
||
|
|
|
||
|
|
if __name__ == '__main__':
|
||
|
|
main()
|