Warning: file_exists(): open_basedir restriction in effect. File(/bin/bash) is not within the allowed path(s): (/var/www/clients/client0/web58/web:/var/www/clients/client0/web58/private:/var/www/clients/client0/web58/tmp:/var/www/testwiki.znil.net/web:/srv/www/testwiki.znil.net/web:/usr/share/php5:/usr/share/php:/tmp:/usr/share/phpmyadmin:/etc/phpmyadmin:/var/lib/phpmyadmin:/dev/random:/dev/urandom;/gitinfo) in /var/www/clients/client0/web58/web/includes/shell/CommandFactory.php on line 119

Deprecated: Use of MediaWiki\Parser\ParserOutput::addJsConfigVars was deprecated in MediaWiki 1.38. [Called from DisplayComments::getParserHandler in /var/www/clients/client0/web58/web/extensions/Comments/includes/parser/DisplayComments.php at line 29] in /var/www/clients/client0/web58/web/includes/debug/MWDebug.php on line 385
Domäne eines Computers zuverlässig in Batch Skript herausbekommen abfragen ermitteln – testznilwiki
 Aktionen

Domäne eines Computers zuverlässig in Batch Skript herausbekommen abfragen ermitteln

Aus testznilwiki

Ich war gerade dabei einen kleinen Programm-Updater zu schreiben der mit SYSTEM-Rechten läuft ... da fiel mir auf das es nun Essig war mit der Umgebungsvariable %USERDOMAIN%.
Diese hatte ich sonst immer in Scripten für die Abfrage der Computerdomäne genutzt.

Zum einen funktioniert es nicht als SYSTEM-Benutzer ... zum anderen muss der aktuelle benutzer ja nicht unbedingt in der Domäne des Computers sein (Stichwort Vertrauensstellungen').
Bei meiner Suche nach einer Lösung fand ich heraus das es auf jeden Rechner mit WMI-Schnittstelle (sagen wir mal ab Windows XP / 2003) ein kleines Programm wmic.exe gibt.

Mit

wmic.exe COMPUTERSYSTEM GET DOMAIN

kann man sprachneutral nach der Domäne fragen. nahc einer Idee von hier: http://superuser.com/questions/468217/how-to-get-domain-name-in-windows-using-command/733982#733982
habe ich daraus folgendes Skript gebaut:

@REM + find the computer domain name
@echo off

FOR /F "usebackq tokens=*" %%a IN (`wmic.exe COMPUTERSYSTEM GET DOMAIN /Value`) DO (
	@((ECHO %%a | findstr /i /c:"Domain=") && SET _str=%%a) > NUL 2>&1
)
FOR /F "tokens=2 delims=^=" %%a IN ("%_str%") do SET COMPUTERDOMAIN=%%a
SET COMPUTERDOMAIN=%COMPUTERDOMAIN: =%

SET COMPUTERFQDN=%COMPUTERNAME%.%COMPUTERDOMAIN%
echo Vollstaendiger Computername: %COMPUTERFQDN%
echo Nur die Domaene:             %COMPUTERDOMAIN%



--Bernhard Linz 21:11, 26. Mär. 2014 (CET)


Loading comments...