Bitte PowerShell Profis um Hilfe!

Registrierte und angemeldete Benutzer sehen den BMW-Treff ohne Werbung
  • Bin jetzt am PC. Es funktioniert doch.


    2 USB-Sticks eingesteckt

    Code
    PS C:\> $stick = Get-PhysicalDisk | Where-Object {$_.BusType -eq "USB"} | Select-Object -ExpandProperty DeviceID
    
    PS C:\> echo $stick
    2
    1
    
    PS C:\Users\HHITX> 

    Steckt keiner drin, läuft es ins Leere, d.h. $stick ist leer.


    Kann man so abfangen

    Code
    PS C:\> if ($stick) { echo $stick } else { echo "Kein USB-Stick erkannt"; break; }
    Kein USB-Stick erkannt


    Ich gehe davon aus, dass kein USB-Stick drin war bzw. der Zugriff darauf beschränkt ist.

  • Das Programm befindet sich auf dem Stick. Soweit ich weiß war kein 2. Stick eingesteckt. Diskpart kann mit einem Array nichts anfangen. Bzw. müßte man es anders programmieren.

    Einmal editiert, zuletzt von CP-1015 ()

  • Du kannst es auf den ersten oder sonstige Einträge begrenzen. First, Last, Skip etc.


    Beispiel

    Code
    $Stick = Get-PhysicalDisk | Where-Object {$_.BusType -eq "USB"} | Select-Object -ExpandProperty DeviceID -First 1

    Gibt nur den ersten Eintrag der Liste aus.

  • Nütz aber nichts, es muß der richtige Stick sein. Dazu benötige ich dann noch eine weitere Eigenschaft. Vielleicht bekomme ich morgen den Variableninhalt. Dann weiß ich ob ein oder mehrere Werte. Bis dahin Danke für Eure Unterstützung.

  • Die ganze Aufregung war umsonst. Soweit ich aus der Ferne beurteilen kann, hat der User einen weiteren USB übersehen. Zur Sicherheit findet die Auswahl nicht mehr nach dem BusType statt. Danke!