Benutzer-Werkzeuge

Webseiten-Werkzeuge


programme:dhcpdnsadmin:dda_20180412

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen der Seite angezeigt.

Link zu der Vergleichsansicht

Beide Seiten, vorherige ÜberarbeitungVorherige Überarbeitung
programme:dhcpdnsadmin:dda_20180412 [2020/11/13 13:54] – ↷ Seite von programme:dda:dda_20180412 nach programme:dhcpdnsadmin:dda_20180412 verschoben pulsarprogramme:dhcpdnsadmin:dda_20180412 [2023/08/16 10:09] (aktuell) – gelöscht techguru
Zeile 1: Zeile 1:
  
-<code python dda_20180412.py> 
- 
-#!/usr/bin/env python3 
-# -*- coding: utf-8 -*- 
-# 
-#  dda.py 
- 
-import sys 
-from glob import glob 
- 
-verzei = glob("vlans/*") 
- 
- 
- 
-# 
-# Eingabe 
-# 
-print ("""Welche(r) Rechner/Drucker soll(en) modifiziert werden. 
-Mehrere Rechner mit Leerzeichen trennen. \n\n """) 
- 
-devices = input("Eingabe der Geräte Namen: ").lower() 
-macadr = input("Optional Eingabe der MAC Adresse in der dazugehörigen Reihenfolge: ").upper() 
-vlan = input("Eingabe der VLAN Nr.: ") 
- 
- 
- 
-# Fkt. definition  
-def check_vlan_and_modify(vlandat): 
-    ''' Lesefunktion für eine beliebige VLAN-Datei ''' 
-    lines = [] 
-    with open((vlandat), 'r') as vlandatei: 
-        lines = vlandatei.readlines() 
- 
-     
-    contains_device = False 
-    mac_adr = None 
-    index = None 
-     
-    print(lines) 
-     
-    # Inhalt prüfen: 
-    for i, line in enumerate(lines): 
-        if line.startswith(devices): 
-            contains_device = True 
-            print("Device '{}' in VLAN-Datei '{}' enthalten!".format(devices, vlandat)) 
-             
-            mac_adr = line.split()[1] 
-            if (mac_adr) is not (macadr): 
-                print (Programm Abbruch! - Ein anderes Gerät hat bereits die ) 
-             
-            index = i 
-            break 
- 
- 
-    if not contains_device: 
-        print("Device '{}' wurde NICHT in VLAN-Datei '{}' gefunden!".format(devices, vlandat)) 
-        return 
-         
-    # An dieser Stelle wissen wir, dass 'device' in der Datei enthalten ist! 
-    # Line mit dem gefundenen Device entfernen: 
-     
-    del lines[index] 
-     
-     
-    # Neuen Inhalt in Datei schreiben: 
-    with open((vlandat), 'w') as vlandatei: 
-        vlandatei.writelines(lines) 
-        print("->", vlandat) 
-         
-    return(mac_adr) 
- 
- 
- 
-# 
-# Dateien einlesen 
-# 
-""" 
-lines = [] 
-lines_devices = [] 
-lines_mac = [] 
-lines_ip = [] 
- 
- 
-for vlandat in verzei: 
- with open((vlandat), 'r') as vlandatei: 
- for line in vlandatei: 
- l_elems = line.split() 
- lines.append(line) 
- lines_devices = [] 
- lines_devices.append(l_elems[0]) 
- lines_mac.append(l_elems[1]) 
- lines_ip.append(l_elems[2]) 
- m_devices = set(lines_devices) 
- m_mac = set(lines_mac) 
- m_ip = set(lines_ip) 
- #print("datei" + (vlandatei.name)) 
- #str(vlandatei.name) 
-#print(lines) 
-print(m_devices) 
-print(m_mac) 
-print(m_ip) 
-""" 
- 
-# 
-# Dateien einlesen und bereinigen 
-# 
-l_macvondeldev = [] 
- 
-for vlandat in verzei: 
-    macvondeldev = (check_vlan_and_modify(vlandat)) 
-    l_macvondeldev.append(str(macvondeldev)) 
- 
- 
-m_summemacs = set(l_macvondeldev) 
-l_summemacs = list(m_summemacs) 
-print (l_summemacs) 
- 
- 
-for i in l_summemacs: 
-    if i = None: 
-        print(kein doppeltes Gerät gefunden) 
-         
- 
- 
-""" 
-# 
-# IP generieren 
-# 
-zaehler = 1 
- 
-while zaehler < 254: 
- ip = "172.16.{[0]}.{}".format(vlan, zaehler) 
- #print(ip) 
- if ip not in lines_ip: 
- eingabeliste = "{} {} {}\n".format(devices, macadr, ip) 
- #lines.append(eingabeliste) 
- break 
-  
- zaehler += 1 
-""" 
- 
- 
-# 
-# Eingabe-Liste erstellen 
-# 
-#print (ip) 
-#eingabeliste = "{} {} {}\n".format(devices, macadr, ip) 
- 
- 
- 
-# 
-# komplette Liste erstellen 
-# 
-#lines.append(eingabeliste) 
- 
- 
- 
-# 
-# Dateien schreiben 
-# 
-</code> 
programme/dhcpdnsadmin/dda_20180412.1605272069.txt.gz · Zuletzt geändert: 2020/11/13 13:54 von pulsar