[python]使用python进行LINUX系统操作

需求:在LINUX上做数据传输程序的时候,调试时经常强制中断服务器端程序,导致端口不能释放,下次启动服务器程序时就会端口被占而无法启动。通常是使用(list open file)lsof -i 6666来查看6666端口的程序信息,得到占用程序的PID后,再使用kill把它杀了。使用python脚本使得这样繁琐的工作变得十分简单。

import os
import sys
if len(sys.argv)>1:
    port=sys.argv[1]
else:
    port='6666'

tmp=os.popen('lsof -i:'+port).readlines()
cmd='kill '+tmp[1].split()[1]
os.system(cmd)

python里面有两种方法运行linux命令,都需要import os。第一种使用os.system(cmd),但此方法不能记录返回值,直接执行。第二使用(program open)os.popen(cmd).readlines(),返回值按行记录在一个list里。

使用sys.argv来查看脚本传递的参数。第一个参数固定为脚本的名称,因此我们传递的参数从sys.argv[1]开始。可以使用len(sys.argv)来检查有无传递额外参数。

转载于:https://www.cnblogs.com/iyjhabc/p/3274923.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值