万年素人からHackerへの道

万年素人がHackerになれるまで殴り書きするぜ。

ポートを見てkillをPythonで

#!/usr/bin/env python
# -*- coding: utf-8 -*-
import os
import re
import socket


port_num = 8080
os.system("netstat -anp | grep %d > net.txt" % port_num)
f = open("net.txt","r")
# 1行毎にファイル終端まで全て読む(改行文字も含まれる)
lines = f.readlines()
f.close()

killable_process = ''

for line in lines:
    # 犯人
    res = re.search('(\d+)(?=/.*)', line)
    # 正規表現に引っかからなかったらNoneなのでそれを弾く
    if res != None:
        killable_process = res.group()
        print 'killable process: %s' % killable_process

if killable_process != '':
    name = raw_input('Do you kill process, %s ? [y/n]' % killable_process)
    if name == 'y':
        os.system("kill %s" % killable_process)
    else:
        print 'stopped'

port_numはお好きなポート(killしたいポート)で行う。 これで取り敢えず、使ってるポートが表示される。

そのあと、使ってたらそのプロセスを中断するかが出てくる。 yをタイプするとkillします。 nをタイプすると中断。