有时需要使用ping命令检查网络通断,如果需要检查的网络主机比较多,使用脚本自动检查就比较方便。
vim test.py //创建一个.py文件
test.py代码:
1 #导入所需模块 2 import subprocess 3 from subprocess import run 4 from time import time 5 from time import ctime 6 #定义函数 7 def ping (ip): 8 a=run('ping -c 2 %s' %ip,shell=True,stdout=subprocess.PIPE) //执行命令行指令并返回结果 9 t1=time() 10 t2=ctime(t1) //获取当前系统时间 11 if a.returncode==0: //如果返回值是0表示连通,否则为断开 12 print(t2+':'+' '+ip+'网络连通') 13 else: 14 print(t2+':'+' '+ip+'网络断开') 15 16 ping('192.168.0.1') 17 ping('192.168.0.2') 18 ping('192.168.0.10')
运行结果:
在linux中定时执行一个程序可以使用crond服务,创建编辑计划任务:
crontab -e
写入:
*/1 * * * * /usr/local/bin/python3.6 /var/test.py > /dev/pts/0
前五位对应分、时、日、月、年,*/1 * * * *代表每隔一分钟执行一次,之后是任务内容设置,这里是用python3.6执行test.py,并将执行结果重定向到终端显示。
保存退出后任务就会按计划执行。