none
Prüfen ob Registry Key vorhanden ist RRS feed

  • Frage

  • Guten Tag!

    Ich bin sozusagen ganz frisch zu Powershell gekommen und habe eine Aufgabe bekommen an der ich derzeit wohl ein wenig am verzweifeln bin.

    Ich suche ein Script mit dem ich auslesen kann ob folgender Key/Ordner in der Registry vorhanden ist:

    HKCU:\SOFTWARE\Microsoft\SystemCertificates\Root\34E6D8C4F9F4448AC7B3B713E3A093BDF78436D9

    Wenn der Key so vorhanden ist dann sollte ein Textfile geschrieben werden (Filename sollte so heissen: PC-NUMMER.txt) und dieses sollte dann auf den Server SVTest01 kopiert werden.

    Könnt ihr mir weiterhelfen? 

    Liebe Grüsse

    Datti

    Donnerstag, 19. Mai 2016 13:53

Antworten

  • Ja, also die Antworten haben sich ein bißchen überschnitten :-)

    Eine andere Variante ware

    $file = "$env:TEMP\$env:COMPUTERNAME.txt"
    $target = "\\PC-AI-2222\Powershell$"
    if ( Get-Item 'HKCU:\SOFTWARE\Microsoft\SystemCertificates\Root\34E6D8C4F9F4448AC7B3B713E3A093BDF78436D9' -ErrorAction SilentlyContinue ) {
        "Cert vorhanden" | Out-File $file -Force
        Copy-Item -Path $file -Destination $target -Force
    } 


    Evgenij Smirnov

    msg services ag, Berlin -> http://www.msg-services.de
    my personal blog (mostly German) -> http://it-pro-berlin.de
    Windows Server User Group, Berlin -> http://www.winsvr-berlin.de
    Mark Minasi Technical Forum, reloaded -> http://newforum.minasi.com

    In theory, there is no difference between theory and practice. In practice, there is.

    • Als Antwort markiert Datti Donnerstag, 19. Mai 2016 14:57
    Donnerstag, 19. Mai 2016 14:48

Alle Antworten

  • So ganz auf die Schnelle:

    $file = "$env:TEMP\$env:COMPUTERNAME.txt"
    $target = "\\SVTest01\Share"
    try {
        Get-Item HKCU:\SOFTWARE\Microsoft\SystemCertificates\Root\34E6D8C4F9F4448AC7B3B713E3A093BDF78436D9
        "Cert vorhanden" | Out-File $file -Force
        Copy-Item -Path $file -Destination $target -Force
    } catch {}

    :-)


    Evgenij Smirnov

    msg services ag, Berlin -> http://www.msg-services.de
    my personal blog (mostly German) -> http://it-pro-berlin.de
    Windows Server User Group, Berlin -> http://www.winsvr-berlin.de
    Mark Minasi Technical Forum, reloaded -> http://newforum.minasi.com

    In theory, there is no difference between theory and practice. In practice, there is.


    • Als Antwort markiert Datti Donnerstag, 19. Mai 2016 14:23
    • Tag als Antwort aufgehoben Datti Donnerstag, 19. Mai 2016 14:27
    • Bearbeitet Evgenij Smirnov Donnerstag, 19. Mai 2016 14:27 Wert im Pfad
    Donnerstag, 19. Mai 2016 14:13
  • Wow, perfekt!

    Vielen lieben Dank für die Hilfe!

    eine kurze Frage dazu hätte ich jedoch noch. Und zwar habe ich noch den Key "34E6D8C4F9F4448AC7B3B713E3A093BDF78436D9" mitgegeben. Sieht also nun so aus:

     
    $file = "$env:TEMP\$env:COMPUTERNAME.txt"
    $target = "\\PC-AI-2222\Powershell$"
    try {
        Get-Item 'HKCU:\SOFTWARE\Microsoft\SystemCertificates\Root\34E6D8C4F9F4448AC7B3B713E3A093BDF78436D9'
        "Cert vorhanden" | Out-File $file -Force
        Copy-Item -Path $file -Destination $target -Force
    } catch {}

    Was mich jedoch verwirrt. Ist dieser Key nicht vorhanden erstellt es mir trotzdem ein Textfile mit "Cert vorhanden" Was kann ich machen? Wenn er nicht vorhanden ist sollte einfach gar nichts passieren.


    • Bearbeitet Datti Donnerstag, 19. Mai 2016 14:27
    Donnerstag, 19. Mai 2016 14:23
  • musst nur im Pfad Deinen Thumbprint-Wert wieder ergänzen ;-)

    Evgenij Smirnov

    msg services ag, Berlin -> http://www.msg-services.de
    my personal blog (mostly German) -> http://it-pro-berlin.de
    Windows Server User Group, Berlin -> http://www.winsvr-berlin.de
    Mark Minasi Technical Forum, reloaded -> http://newforum.minasi.com

    In theory, there is no difference between theory and practice. In practice, there is.

    Donnerstag, 19. Mai 2016 14:27
  • Sorry für die doofe Frage aber, was ist das?

    Sobald der Key "34E6D8C4F9F4448AC7B3B713E3A093BDF78436D9" nicht vorhanden ist soll er einfach kein File erstellen, nichts kopieren etc.

    Donnerstag, 19. Mai 2016 14:40
  • >      Get-Item 'HKCU:\SOFTWARE\Microsoft\SystemCertificates\Root\34E6D8C4F9F4448AC7B3B713E3A093BDF78436D9'
     
    Get-Item
    'HKCU:\SOFTWARE\Microsoft\SystemCertificates\Root\34E6D8C4F9F4448AC7B3B713E3A093BDF78436D9'
    -ErrorAction Stop
     
    ("Nicht gefunden" ist ein Non Terminating Error :-))
     
    Donnerstag, 19. Mai 2016 14:41
  • Ja, also die Antworten haben sich ein bißchen überschnitten :-)

    Eine andere Variante ware

    $file = "$env:TEMP\$env:COMPUTERNAME.txt"
    $target = "\\PC-AI-2222\Powershell$"
    if ( Get-Item 'HKCU:\SOFTWARE\Microsoft\SystemCertificates\Root\34E6D8C4F9F4448AC7B3B713E3A093BDF78436D9' -ErrorAction SilentlyContinue ) {
        "Cert vorhanden" | Out-File $file -Force
        Copy-Item -Path $file -Destination $target -Force
    } 


    Evgenij Smirnov

    msg services ag, Berlin -> http://www.msg-services.de
    my personal blog (mostly German) -> http://it-pro-berlin.de
    Windows Server User Group, Berlin -> http://www.winsvr-berlin.de
    Mark Minasi Technical Forum, reloaded -> http://newforum.minasi.com

    In theory, there is no difference between theory and practice. In practice, there is.

    • Als Antwort markiert Datti Donnerstag, 19. Mai 2016 14:57
    Donnerstag, 19. Mai 2016 14:48
  • Aaah jetzt, verstanden ;-)

    Vielen lieben Dank für die Mühe. Jetzt funktioniert alles wie gewünscht!

    Donnerstag, 19. Mai 2016 14:57
  • ("Nicht gefunden" ist ein Non Terminating Error :-))
     
    Ich weiß, warum ich das verwechselt habe - habe heute den halben Tag mit AD-Cmdlets zu tun gehabt. Dort ist es nämlich ein Terminating Error :-)

    Evgenij Smirnov

    msg services ag, Berlin -> http://www.msg-services.de
    my personal blog (mostly German) -> http://it-pro-berlin.de
    Windows Server User Group, Berlin -> http://www.winsvr-berlin.de
    Mark Minasi Technical Forum, reloaded -> http://newforum.minasi.com

    In theory, there is no difference between theory and practice. In practice, there is.

    Donnerstag, 19. Mai 2016 15:09
  • >     ("Nicht gefunden" ist ein Non Terminating Error :-))
    >
    > Ich weiß, warum ich das verwechselt habe - habe heute den halben Tag mit
    > AD-Cmdlets zu tun gehabt. Dort ist es nämlich ein Terminating Error :-)
     
    Konsequente Inkonsequenz :))
     
    Freitag, 20. Mai 2016 08:47