Come ottenere il nome di dominio in Windows usando il comando?


18

Ho bisogno di un comando simile al nome di dominio di Linux su Windows senza utilizzare alcuna applicazione di terze parti.

Esiste un tale comando?


Per informazioni: il nome di dominio del computer e il nome di dominio dell'utente che ha effettuato l'accesso potrebbero non essere gli stessi.
RBT

Risposte:


25

Provare:

echo %USERDOMAIN%

o

echo %USERDNSDOMAIN%

Se il problema persiste, puoi provare a utilizzare systeminfo:

systeminfo | findstr /B /C:”Domain”

3
% Userdomain% darebbe il dominio dell'utente, non necessariamente uguale al nome di dominio del computer. windows-commandline.com/find-domain-name-command-line
Sriniv

le virgolette intelligenti ”Domain”non faranno grep la stringa
phuclv,

1

% USERDOMAIN% e il dominio del computer di rete possono essere diversi. Il comando systeminfo otterrà la risposta giusta ma è LENTO! Ecco una soluzione che ho usato:

@REM + find the computer domain name
 FOR /F "usebackq tokens=*" %%a IN (`ipconfig /all`) DO (
     @((ECHO %%a | findstr /i /c:"Primary Dns Suffix") && SET _str=%%a) > NUL 2>&1
 )
 FOR /F "tokens=2 delims=:" %%a IN ("%_str%") do SET _computerDomain=%%a
 SET _computerDomain=%_computerDomain: =%

 SET _fqdn=%COMPUTERNAME%.%_computerDomain%

1

@Mike: ottima soluzione - ma ho avuto dei problemi con esso in un ambiente multilingue. Ho server tedeschi e inglesi.

Ho cambiato il tuo script per usare wmic.exe :

@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 _fqdn=%COMPUTERNAME%.%_computerDomain%
echo %_fqdn%

Grazie per la tua idea


1

È possibile eseguire il comando seguente al prompt dei comandi:

set user

Ti dà molte più informazioni relative al dominio oltre al nome del dominio come mostrato nell'istantanea di seguito:

  1. Dominio DNS utente
  2. Dominio utente
  3. Profilo di roaming del dominio utente
  4. Nome utente
  5. Profilo utente

inserisci qui la descrizione dell'immagine

Nota importante : il dominio su cui è registrato il computer potrebbe non essere uguale al dominio su cui è registrato l'utente che ha effettuato l'accesso. Leggere informazioni sulla transitività e la direzione nella fiducia del dominio per sapere come un utente registrato in un dominio può accedere a un computer su un altro dominio.


0

È sufficiente una riga per ottenere il dominio utilizzando un utente locale:

FOR / F "token usebackq = 2 delims ==" %% a IN ( wmic.exe COMPUTERSYSTEM GET DOMAIN /Value ^|find /i "domain") DO impostato _computerDom = %% a

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.