Wie kann aus cmd geprüft werden, ob ein Profilstatus lokal oder temporär oder Roaming oder Backup ist?
7332
DannyBoi
Wie kann aus cmd geprüft werden, ob ein Profilstatus lokal oder temporär oder Roaming oder Backup ist?
Ich habe eine Möglichkeit, den TYP und den STATUS der Profile im Computer von der Befehlszeile aus zu überprüfen.
Normalerweise bekommen wir es hier ....
Ich werde eine Verbindung zum Computer herstellen. psexec \\ipaddress cmd Dann möchte ich einen Befehl ausführen, um diese Informationen anzuzeigen.
Ich könnte es in der Registry überprüfen, indem ich den PROFILE IMAGE PATH analysiere, aber dafür muss ich zuerst die SID finden. Diese Methode ist jedoch nicht perfekt, weil sie mir nur sagt, ob sie lokal ist oder nicht.
Ich würde eine Befehlszeilenmethode vorziehen, um die Profilgröße, den Typ und den Status zu überprüfen. 'Status' ist die Priorität in dieser Frage. Ich möchte den Profilstatus eindeutig unterscheiden, ob es sich um lokales oder roaminges oder temporäres oder Backup handelt.
Bitte helfen
Diese SU-Frage bietet möglicherweise Hilfe: [Wie erhalte ich die SID des Windows-Benutzerkontos?] (Http://superuser.com/questions/231908/how-to-know-sid-of-windows-user-account)
Ƭᴇcʜιᴇ007 vor 8 Jahren
0
2 Antworten auf die Frage
1
lightwing
Sie können WMI über Powershell mit psexec mit dem folgenden Befehl abfragen:
Undefined - 0 - Der Status des Profils ist nicht festgelegt.
Temporär - 1 - Das Profil ist ein temporäres Profil und wird gelöscht, nachdem sich der Benutzer abgemeldet hat.
Roaming - 2 - Das Profil ist auf Roaming eingestellt. Wenn dieses Bit nicht gesetzt ist, wird das Profil auf lokal gesetzt.
Obligatorisch - 4 - Das Profil ist ein obligatorisches Profil.
Beschädigt - 8 - Das Profil ist beschädigt und wird nicht verwendet. Der Benutzer oder Administrator muss die Beschädigung beheben, um das Profil verwenden zu können.
Wenn Sie jedoch psexec können, können Sie möglicherweise einfach den Befehlsschalter "powershell gwmi" verwenden, um das Gerät aus der Ferne zu treffen:
`powershell.exe -command" gwmi win32_userprofile | select localpath, roamingpath, status "` zeigt nur die Liste der lokalen Pfade an
DannyBoi vor 8 Jahren
0
Ich bin mir nicht sicher. Ich habe es auf meinem eigenen System auf einem Server wie dem folgenden getestet: `psexec \\ servername powershell -command" gwmi win32_userprofile | select localpath, roamingpath, status "` Es wurden die für mich erwarteten Ergebnisse zurückgegeben. Ist es möglich, dass sich auf Ihrem Gerät keine servergespeicherten Profile befinden? Wenn es keine servergespeicherten Profile gibt, ist die Spalte des servergespeicherten Profils leer und der Status ist etwas anderes als 2 (0, wenn er lokal ist).
lightwing vor 8 Jahren
0
Versuche dies. Es wird bestätigt, ob diese Felder in der WMI-Klasse des von Ihnen getesteten Systems vorhanden sind: `psexec \\ servername powershell.exe - Befehl" gwmi win32_userprofile | get-member "'' Get-member gibt eine Liste aller Eigenschaften und zurück Methoden, die für den Befehl verfügbar sind, der an ihn geleitet wird.
lightwing vor 8 Jahren
0
Ich habe also 'get-member' und Localpath, Roaming Path, Status sind alle da. Ich habe den Befehl stückweise von cmd ausgeführt. 'powershell', dann 'gwmi', dann 'win32_userprofile' zeigt alle Informationen an, einschließlich `Localpath, Roaming Path, Status '. Der Roaming-Pfad ist leer, der Status ist jedoch in Ordnung.
DannyBoi vor 8 Jahren
0
@ltghtwing ..... Ich habe den Befehl "powershell.exe" ausprobiert "gwmi win32_userprofile | select status" `Es kam alles leer. Dann habe ich es in eine Textdatei kopiert und festgestellt, dass in der Statusspalte ** in Spalte 445 ** angezeigt wird. Wir brauchen einen besseren Filter
DannyBoi vor 8 Jahren
0
1
Pimp Juice IT
Wie kann aus cmd geprüft werden, ob ein Profilstatus lokal oder temporär oder Roaming oder Backup ist?
Hier ist die reine WMIC- Methode der Befehlszeile, um den Status basierend auf dem LocalPath- Wert des zu überprüfenden Benutzernamens abzurufen .
Stellen Sie sicher, dass der %username%Wert des zu überprüfenden Profils explizit an Stelle von gesetzt wird, %username%wenn das Profil, unter dem Sie es ausführen, nicht überprüft wird, wenn Sie es ausführen.
Der Befehl
WMIC PATH win32_UserProfile WHERE LocalPath="c:\\users\\%username%" GET Status
Ergebnis Beispiel
Statuswert Bedeutungen
Status
Datentyp: uint32
Zugriffstyp: Schreibgeschützt
Ruft ein Bitfeld ab, das den Status des Profils enthält.
Diese Eigenschaft enthält einen oder mehrere der folgenden Werte:
Wert: 0 undefiniert
Bedeutung: Der Status des Profils ist nicht gesetzt.
Wert: 1 Temporär
Bedeutung: Das Profil ist ein temporäres Profil und wird gelöscht, nachdem sich der Benutzer abgemeldet hat.
Wert: 2 Roaming
Bedeutung: Das Profil ist auf Roaming eingestellt. Wenn dieses Bit nicht gesetzt ist, wird das Profil auf lokal gesetzt.
Wert: 4 Pflicht
Bedeutung: Das Profil ist ein Pflichtprofil.
Wert: 8 beschädigt
Bedeutung: Das Profil ist beschädigt und wird nicht verwendet. Der Benutzer oder Administrator muss die Beschädigung beheben, um das Profil verwenden zu können.