none
Multifunktionsscript für SCCM RRS feed

  • Frage

  • Hallo,

    ich stehe vor folgendem Problem:

    Über den SCCM möchte ich gerne mehrere PCs bespielen, muss dabei aber eine Namenskonvention einhalten.

    Hierzu möchte über ein Script das Preboot läuft folgende Abfragen ausführen, um den Namen zusammen zu basteln.

    Hier ein Beispiel:

    Wenn IP Adresse im Bereich von Standort = "10.20.* , füge "BER" zu Namen hinzu.

    Wenn nicht, prüfe nächsten Adressbereich (Insgesamt vier).

    Wenn WMI-Abfrage nach Hersteller = "Lenovo" , füge "LT" zu Namen hinzu.

    Wenn nicht, prüfe nächsten Hersteller (Insgesamt drei).

    Wenn MAC-Adresse = MAC-Adresse aus einer Liste auf Share, füge ID, die zur MAC gehört, zu Namen hinzu.

    Wenn MAC-Adresse ungleich MAC aus Liste, gehe Liste weiter durch bis Abfrage passt.

    Ich weiß, dass ich da mit IF und FOR Schleifen arbeiten muss, aber ich kann das einfach "schriftlich" nicht umsetzen :(

    Donnerstag, 13. Februar 2014 14:50

Antworten

  • Mhm das sieht mir so aus als versuchst du mit Pre-Anfängerwissen eine fortgeschrittene Aufgabe zu lösen. :) Das kann nur in die Hose gehen.Selbst wenn dir jemand das komplette Script schreibt, bei der kleinsten Änderung oder Ergänzung stehst du wieder auf dem Schlauch.

    Ich rate dir, besorg dir ein gutes Buch und lerne Powershell. Die Lernkurve ist flach und man kann's in unserem Job permanent gebrauchen.

    Ok dann habe ich dir mal einen Anfang gemacht:

    $basisName = "xxxx"
    $ip = "10.20.12.234"
    $Vendor = "Lenovo"
    
    # check IP mit Regex 
    if ($ip -match "^10\.20\." ) {
    	$basisName += "BER"
    }
    
    # check Vendor
    switch ($vendor) 
        { 
            "Lenovo" { $basisName += "LT" } 
            "Vend02" { $basisName += "xx" } 
            "Vend03" { $basisName += "xx" } 
        }
    
    write-host $basisName
     

    was fehlt ist nun das Auslesen der IP-Adresse und der MAC-Adresse (bitte googlen) und das Auslesen des Herstellers (bitte googlen). Was den letzten Teil betrifft, hast du leider nicht erwähnt wie die Liste mit den IDs aussieht. Poste mal einen (anonymisierten) Auszug, dann können wir drüber sprechen wie das Auslesen bzw. der Abgleich statfinden kann.

    Grüße, Denniver


    Blog: http://bytecookie.wordpress.com
    Powershell Codesnippet Manager: Link

    Hilf mit und markiere hilfreiche Beiträge mit dem "Abstimmen"-Button (links) und Beiträge die eine Frage von dir beantwortet haben, als "Antwort" (unten).
    Warum das Ganze? Hier gibts die Antwort.

    Donnerstag, 13. Februar 2014 17:51
    Moderator

Alle Antworten

  • Mhm das sieht mir so aus als versuchst du mit Pre-Anfängerwissen eine fortgeschrittene Aufgabe zu lösen. :) Das kann nur in die Hose gehen.Selbst wenn dir jemand das komplette Script schreibt, bei der kleinsten Änderung oder Ergänzung stehst du wieder auf dem Schlauch.

    Ich rate dir, besorg dir ein gutes Buch und lerne Powershell. Die Lernkurve ist flach und man kann's in unserem Job permanent gebrauchen.

    Ok dann habe ich dir mal einen Anfang gemacht:

    $basisName = "xxxx"
    $ip = "10.20.12.234"
    $Vendor = "Lenovo"
    
    # check IP mit Regex 
    if ($ip -match "^10\.20\." ) {
    	$basisName += "BER"
    }
    
    # check Vendor
    switch ($vendor) 
        { 
            "Lenovo" { $basisName += "LT" } 
            "Vend02" { $basisName += "xx" } 
            "Vend03" { $basisName += "xx" } 
        }
    
    write-host $basisName
     

    was fehlt ist nun das Auslesen der IP-Adresse und der MAC-Adresse (bitte googlen) und das Auslesen des Herstellers (bitte googlen). Was den letzten Teil betrifft, hast du leider nicht erwähnt wie die Liste mit den IDs aussieht. Poste mal einen (anonymisierten) Auszug, dann können wir drüber sprechen wie das Auslesen bzw. der Abgleich statfinden kann.

    Grüße, Denniver


    Blog: http://bytecookie.wordpress.com
    Powershell Codesnippet Manager: Link

    Hilf mit und markiere hilfreiche Beiträge mit dem "Abstimmen"-Button (links) und Beiträge die eine Frage von dir beantwortet haben, als "Antwort" (unten).
    Warum das Ganze? Hier gibts die Antwort.

    Donnerstag, 13. Februar 2014 17:51
    Moderator