linux下各主机服务器的连接网络状态
1、进程代码
import re
import copy
import subprocess
def ping():
ipList = ["127.0.0.1", "127.0.0.2", "192.168.1.8", "1.2.3.4"]
queueList = copy.deepcopy(ipList)
while True:
ip = queueList.pop()
if queueList == []:
queueList = copy.deepcopy(ipList)
data = subprocess.Popen(f"ping -c 1 -w 1 {ip}", stdout=subprocess.PIPE, stdin=subprocess.PIPE,stderr=subprocess.PIPE, shell=True)
formateData = data.stdout.readlines()
if formateData != []:
receiveMsg = re.findall(r"\d+\.?\d*", formateData[-2].decode("utf-8"))
if receiveMsg[2] != "0":
print(f"ping {ip} lost data")
else:
print(f"ping {ip} sucess took {d2[len(d2) - 1]} ms")
else:
print(f"ping {ip} error")```
```python
import re
import copy
import asyncio
import subprocess
async def ping():
ipList = ["127.0.0.1", "127.0.0.2", "192.168.1.8", "1.2.3.4"]
queueList = copy.deepcopy(ipList)
while True:
ip = queueList.pop()
if queueList == []:
queueList = copy.deepcopy(ipList)
data = await asyncio.create_subprocess_shell(f"ping -c 1 -w 1 {ip}", stdout=asyncio.subprocess.PIPE, stdin=asyncio.subprocess.PIPE,stderr=asyncio.subprocess.PIPE, shell=True)
formateData = await data.stdout.readlines()
if formateData != []:
receiveMsg = re.findall(r"\d+\.?\d*", formateData[-2].decode("utf-8"))
if receiveMsg[2] != "0":
print(f"ping {ip} lost data")
else:
print(f"ping {ip} sucess took {d2[len(d2) - 1]} ms")
else:
print(f"ping {ip} error")```
await data.wait()