Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

WMIC - ReturnValue in Batch abfragen

Frage Entwicklung Batch & Shell

Mitglied: robcomboy

robcomboy (Level 1) - Jetzt verbinden

10.12.2008 um 19:01 Uhr, 8680 Aufrufe, 2 Kommentare

Hallo,
ich habe ein kleines Problem.
Vielleicht kann mit jemand helfen


Dieser Einzeiler benennt meinen Benutzernamen in "NewName" um.

01.
wmic UserAccount where Name="%USERNAME%" call Rename Name="NewName"
Um nachzuprüfen, ob dieses erfolgreich geschehen ist, benötige ich den automatisch ausgegebenen ReturnValue Wert in einer Variablen.

Mit %errorlevel% funktioniert es nicht, und ich kenne nicht den Befehl oder die entsprechende Variable, die diesen Wert enthält.

Ist der Befehl erfolgreich ausgeführt worden, dann wird der Wert 0 ausgegeben.

Hoffe jemand kennt eine Lösung.

Grüße, robcomboy
Mitglied: Vierus
10.06.2011 um 02:25 Uhr
Hallo
ja Thema aus 2008 aber bei 1700 klicks, hier mal ein tip
http://mcse.körbel.at/links/290/wmi/wmic.htm

also wäre die antwort:

wmic useraccount get /value

Direkte Wmic-Auswertung auf Batch-Ebene oder Kommandozeile:

for /F "delims== tokens=1" %n in ('wmic os get serialnumber') do set sn=%n

Guß
Vierus
Bitte warten ..
Mitglied: Friemler
10.06.2011 um 03:39 Uhr
Hallo robcomboy,

die SID wird durch eine Umbenennung nicht verändert. Du könntest also zuerst über den alten Usernamen die SID ermitteln und nach der Umbenennung über die SID den jetzigen Usernamen ermitteln. Wenn gewünschter und tatsächlich gesetzter Username gleich sind, war die Aktion erfolgreich.

WMIC benötigt Adminrechte . Ungetestet:
01.
@echo off 
02.
 
03.
setlocal 
04.
 
05.
set "OldName=%UserName%" 
06.
set "NewName=NeuerName" 
07.
 
08.
set "SID=" 
09.
set "Name=" 
10.
 
11.
for /f "tokens=2 delims==" %%s in ('wmic UserAccount Where Name^="%OldName%" get SID /value') do ( 
12.
  if not defined SID set "SID=%%s" 
13.
14.
 
15.
wmic UserAccount Where Name="%OldName%" call Rename Name="%NewName%" 
16.
 
17.
for /f "tokens=2 delims==" %%n in ('wmic UserAccount Where SID^="%SID%" get Name /value') do ( 
18.
  if not defined Name set "Name=%%n" 
19.
20.
 
21.
if "%Name%" equ "%NewName%" echo Erfolgreich
Oder Du könntest das ganze mit VBS lösen, so wie hier beschrieben, und dadurch den Rückgabewert direkt verarbeiten.

Gruß
Friemler
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
gelöst Registry per Batch abfragen und INI Einträge hinzufügen bzw. ändern (18)

Frage von kampen zum Thema Batch & Shell ...

Batch & Shell
gelöst Mehrzeiligen Powershell-Befehl mit Batch ausführen (3)

Frage von 133202 zum Thema Batch & Shell ...

Batch & Shell
gelöst EQU - GLEICH - BATCH (9)

Frage von freshman2017 zum Thema Batch & Shell ...

Neue Wissensbeiträge
Windows 10

Windows 8.x oder 10 Lizenz-Key aus dem ROM auslesen mit Linux

(6)

Tipp von Lochkartenstanzer zum Thema Windows 10 ...

Tipps & Tricks

Wie Hackt man sich am besten in ein Computernetzwerk ein

(40)

Erfahrungsbericht von Herbrich19 zum Thema Tipps & Tricks ...

Heiß diskutierte Inhalte
Windows 10
gelöst Windows 10 Home "Netzlaufwerk nicht bereit" (19)

Frage von Oggy01 zum Thema Windows 10 ...

Exchange Server
gelöst RU 17 Exchange 2010 . Erfahrungen? (10)

Frage von keine-ahnung zum Thema Exchange Server ...

Datenbanken
gelöst MySQL Zeiterfassungs-Problematik (wer ist eingecheckt) (9)

Frage von NativeMode zum Thema Datenbanken ...

Windows Server
Festplatten Ruhezustand Windows Server 2016 (8)

Frage von ahaeuser zum Thema Windows Server ...