Нужен кодер

Pent

RAM
Пользователь
Регистрация
27.06.2020
Сообщения
102
Реакции
15
Депозит
0.0001
Нужно каждый ip из текстового файла разбить на диапозон ip адресов /24, от 0 до 255 и сохранить в файл, язык исполнения не важен. Первый контакт ПМ.
 
Python:
# -*- coding: utf-8 -*-
# !/bin/python
import sys
import os

def validIP(address):
    parts = address.split(".")
    if len(parts) != 4:
        return False
    for item in parts:
        if not 0 <= int(item) <= 255:
            return False
    return True

def ipTo24(address):
    adrss = []
    parts = address.split(".")
    if len(parts) == 4:
        fpart = parts[0] + "." + parts[1] + "." + parts[2] + "."
        for i in range(0, 256):
            adrss.append(fpart + str(i))
    return adrss

if __name__ == "__main__":
    if len(sys.argv) != 2:
        print("Usage: ip.py ips.txt")
        sys.exit(-1)
    
    with open(sys.argv[1], 'r') as f:
        iplist = f.read().splitlines()
    for ip in iplist:
        if validIP(ip):
            with open(sys.argv[1] + ".out.txt", "a") as file:
                file.writelines("%s\n" % line for line in ipTo24(ip))

На python3
Использование: python3 ip.py ips.txt
 
Python:
# -*- coding: utf-8 -*-
# !/bin/python
import sys
import os

def validIP(address):
    parts = address.split(".")
    if len(parts) != 4:
        return False
    for item in parts:
        if not 0 <= int(item) <= 255:
            return False
    return True

def ipTo24(address):
    adrss = []
    parts = address.split(".")
    if len(parts) == 4:
        fpart = parts[0] + "." + parts[1] + "." + parts[2] + "."
        for i in range(0, 256):
            adrss.append(fpart + str(i))
    return adrss

if __name__ == "__main__":
    if len(sys.argv) != 2:
        print("Usage: ip.py ips.txt")
        sys.exit(-1)
   
    with open(sys.argv[1], 'r') as f:
        iplist = f.read().splitlines()
    for ip in iplist:
        if validIP(ip):
            with open(sys.argv[1] + ".out.txt", "a") as file:
                file.writelines("%s\n" % line for line in ipTo24(ip))

На python3
Использование: python3 ip.py ips.txt
Уже написали но все равно спасибо!
 
У Вас недостаточно прав, чтобы здесь отвечать.
Верх