Hirdetés

Új hozzászólás Aktív témák

  • iwu

    addikt

    válasz kraftxld #4241 üzenetére

    hali!
    Jött egy feladat, amire hegesztettem egyet én is ps-ben. NEm nagy cucc, de akár hasznos is lehet másnak, ahol sok az adminisztráció.Egy neten talált scriptet "fejlesztettem" tovább...
    windows srv 2008 MAGYAR dhcp listából átforgat mindenkit fentartott ips-re.

    #kliensek exportja
    $dhcpdump = (netsh dhcp server 192.168.1.2 scope 192.168.1.0 show clients 1)

    $sorok = @()
    #sorok kiválogatása, ahol van IP és MAC:
    foreach ($i in $dhcpdump){
    if ($i -match "\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}"){
    If ($i -match "[0-9a-f]{2}[:-][0-9a-f]{2}[:-][0-9a-f]{2}[:-][0-9a-f]{2}[:-][0-9a-f]{2}[:-][0-9a-f]{2}"){
    $sorok += $i.Trim()
    }
    }
    }

    $logfile = @()
    #hasznos adatok kinyerése
    foreach ($l in $sorok){
    $Row = "" | select Hostname,IP,MACAddress
    $l = $l -replace '-D-','-'
    $l = $l -replace '-U-','-'
    $l = $l -replace '-N-','-'
    $l = $l -replace '-\d{4}.\d{2}.\d{2}.',''
    $l = $l -replace '\d{1,2}[:]\d{2}[:]\d{2}',''
    $l = $l -replace '- SOHA NEM JÁR LE ',''
    $l = $l -replace '- INAKTÍV ',''
    $l = $l -replace ' - ',','
    $l = $l -replace ' -',','
    $l = $l -replace ' ',''
    #$l
    If (($l.Split(","))[3] -ne '') {
    If (($l.Split(","))[3] -ne 'szervernevehogykiszedjukasajatcuccait') {
    $Row.IP = ($l.Split(","))[0]
    $Row.Hostname = ($l.Split(","))[3]
    $Row.MACAddress = (($l.Split(","))[2] -replace '-','')
    $logfile += $Row
    #netsh dhcp server 192.168.1.2 scope 192.168.1.0 add reservedip $Row.IP $Row.MACAddress $Row.Hostname
    }
    }
    }

    $logfile | sort-object Hostname | Export-Csv "c:\temp\Out_List.csv"

    [ Szerkesztve ]

    ajándék ló nem látja a fától a szódás a lovát...

Új hozzászólás Aktív témák