Bagaimana cara mendapatkan nama domain di Windows menggunakan perintah?

18

Saya memerlukan perintah yang mirip dengan domainname Linux di Windows tanpa menggunakan aplikasi pihak ketiga.

Apakah ada perintah seperti itu?

Ricky
sumber
Untuk informasi - nama domain dari komputer dan nama domain dari pengguna yang masuk mungkin tidak sama.
RBT

Jawaban:

25

Mencoba:

echo %USERDOMAIN%

atau

echo %USERDNSDOMAIN%

Jika itu masih tidak berhasil, Anda dapat mencoba menggunakan systeminfo:

systeminfo | findstr /B /C:”Domain”
Jon Lin
sumber
3
% Userdomain% akan memberikan domain pengguna, tidak harus sama dengan nama domain komputer. windows-commandline.com/find-domain-name-command-line
Sriniv
tanda kutip yang cerdas ”Domain”akan membuatnya gagal untuk memahami string
phuclv
1

% USERDOMAIN% dan domain komputer jaringan dapat berbeda. Perintah systeminfo akan mendapatkan jawaban yang benar tetapi itu PERLAHAN! Inilah solusi yang saya gunakan:

@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%
Mike
sumber
1

@ Mike: solusi bagus - tapi saya punya beberapa masalah dengan itu dalam lingkungan multi-bahasa. Saya memiliki server Jerman dan Inggris.

Saya mengubah skrip Anda untuk menggunakan 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%

Terima kasih atas ide Anda

Bernhard
sumber
1

Anda dapat menjalankan perintah di bawah ini pada command prompt:

set user

Ini memberi Anda lebih banyak informasi yang terkait dengan domain selain nama domain seperti yang ditunjukkan dalam snapshot di bawah ini:

  1. Domain DNS pengguna
  2. Domain Pengguna
  3. Profil Roaming Domain Pengguna
  4. Nama pengguna
  5. Profil pengguna

masukkan deskripsi gambar di sini

Catatan Penting : Domain tempat komputer Anda terdaftar mungkin tidak sama dengan domain tempat pengguna yang masuk log. Baca tentang transitivitas dan arah kepercayaan domain untuk mengetahui bagaimana pengguna yang terdaftar di satu domain dapat masuk ke komputer di domain lain.

RBT
sumber
0

Satu baris sudah cukup untuk mendapatkan domain menggunakan pengguna lokal:

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

Brocky
sumber