Windows Server 2022 上进行域操作需要使用一些命令和工具来管理域、用户、计算机等dsquery 是一个用于查询 Active Directory (AD) 的命令行工具,通常用于查找 AD 中的对象(如用户、组、计算机等)。它的各个参数可以帮助你灵活地查找所需的对象,并支持不同的筛选方式。

dsquery 是一个用于查询 Active Directory (AD) 的命令行工具,通常用于查找 AD 中的对象(如用户、组、计算机等)。它的各个参数可以帮助你灵活地查找所需的对象,并支持不同的筛选方式。

dsquery 命令的常见参数、描述、示例、应用场景及表格化方式

参数 描述 示例 应用场景 表格化方式
user 查询用户对象 dsquery user -samid username 查询指定 SAM ID 的用户信息 `dsget user -samid -upn -fn -ln
group 查询组对象 dsquery group -samid groupname 查询指定 SAM ID 的组信息 `dsget group -dn -samid -members
computer 查询计算机对象 dsquery computer -samid COMPUTERNAME 查询指定计算机的详细信息 `dsget computer -dn -samid -desc
ou 查询组织单位(OU) dsquery ou 查询 AD 中的组织单位(OU) Format-Table -Property dn
contact 查询联系人对象 dsquery contact -samid contactname 查询特定联系人的信息 `dsget contact -dn -samid -display
domain 查询域对象 dsquery domain 查询域的基本信息 Format-Table -Property dn
user -filter 使用筛选条件查询用户对象 dsquery user -filter "(objectClass=user)" 筛选出所有的用户对象 `dsget user -dn -samid -upn -fn -ln
-limit 限制返回的结果数量 dsquery user -limit 10 查询指定数量的结果 Format-Table
-attr 查询对象的特定属性 dsquery user -samid username -attr cn 查询用户的特定属性(如 cn `dsget user -samid -attr cn

示例解析

  1. 查询用户对象

    powershellCopy Code
    dsquery user -samid johndoe
    • 描述: 查找 SAM ID 为 johndoe 的用户。
    • 应用场景: 查找特定用户的信息,如 johndoe 用户。
    • 表格化:
      powershellCopy Code
      dsquery user -samid johndoe | dsget user -samid -upn -fn -ln -display | Format-Table
  2. 查询计算机对象

    powershellCopy Code
    dsquery computer -samid workstation01
    • 描述: 查找 SAM ID 为 workstation01 的计算机。
    • 应用场景: 获取特定计算机的详细信息。
    • 表格化:
      powershellCopy Code
      dsquery computer -samid workstation01 | dsget computer -dn -samid -desc | Format-Table
  3. 查询所有用户并格式化为表格

    powershellCopy Code
    dsquery user -limit 0 | dsget user -samid -upn -fn -ln -display | Format-Table -Property samid, upn, fn, ln, display
    • 描述: 查询所有用户并显示 SAM IDUPN名字姓氏 和 显示名称
    • 应用场景: 获取 AD 中所有用户的相关信息并以表格化形式显示。
  4. 查询所有组并显示成员

    powershellCopy Code
    dsquery group -limit 0 | dsget group -dn -samid -members | Format-Table -Property dn, samid, members
    • 描述: 查询所有的组及其成员。
    • 应用场景: 查看 AD 中的所有组以及每个组的成员信息。
  5. 查询特定组织单位 (OU)

    powershellCopy Code
    dsquery ou -limit 0 | Format-Table -Property dn
    • 描述: 查询所有组织单位(OU)。
    • 应用场景: 获取 AD 中的所有 OU 信息。
    • 表格化: 输出 dn(目录名称)并以表格形式显示。
  6. 使用筛选器查询用户

    powershellCopy Code
    dsquery user -filter "(objectClass=user)" | dsget user -dn -samid -upn | Format-Table
    • 描述: 使用筛选器查询所有用户对象。
    • 应用场景: 获取 AD 中所有用户的详细信息。

dsquery 命令与 dsget 命令的结合,能够实现更强大和灵活的查询和输出格式化功能,尤其是当你想要从 Active Directory 获取数据并以表格化的方式查看时。通过调整参数和属性,可以定制化地获取具体对象的信息,并将其输出为清晰的表格,方便分析。


Windows Server 2022 上进行域操作需要使用一些命令和工具来管理域、用户、计算机等。以下是一些常用的 Windows Server 2022 上域操作的命令:

  1. 添加计算机到域

    • 将计算机添加到域的命令为:Add-Computer -DomainName your_domain -Credential your_credentials
  2. 列出域中的计算机

    • 使用命令 net view /domain:your_domain 来列出域中的计算机列表。
  3. 查找域中的用户

    • 使用命令 dsquery user -name username 来查找域中的用户。
  4. 重置域用户密码

    • 使用命令 net user username new_password /domain 来重置域用户密码。
  5. 移动对象到不同的域组织单位(OU)

    • 使用命令 dsmove "DN of the object" -newparent "DN of the target OU" 来移动对象到不同的组织单位。
  6. 查看域控制器信息

    • 使用命令 nltest /dclist:your_domain 来查看域控制器信息。
  7. 强制计算机与域控制器同步

    • 使用命令 w32tm /resync /rediscover 来强制计算机与域控制器同步时间。
  8. 创建新用户账户

    • 使用 dsadd user 命令可以创建新的用户账户,例如:dsadd user "CN=John Doe,CN=Users,DC=example,DC=com" -samid johnd -upn johnd@example.com -fn John -ln Doe -display "John Doe"
  9. 删除用户账户

    • 使用 dsrm 命令可以删除指定的用户账户,例如:dsrm "CN=John Doe,CN=Users,DC=example,DC=com"
  10. 重置用户密码

    • 使用 dsmod user 命令可以重置用户密码,例如:dsmod user "CN=John Doe,CN=Users,DC=example,DC=com" -pwd new_password
  11. 添加计算机到域

    • 使用 Add-Computer 命令可以将计算机添加到域,例如:Add-Computer -DomainName example.com -Credential (Get-Credential)
  12. 移动对象到不同的组织单位(OU)

    • 使用 dsmove 命令可以移动对象到不同的组织单位,例如:dsmove "CN=John Doe,CN=Users,DC=example,DC=com" -newparent "OU=NewOU,DC=example,DC=com"
  13. 列出域中的计算机

    • 使用 dsquery computer 命令可以列出域中的计算机,例如:dsquery computer -limit 0
  14. 查找特定属性的用户

    • 使用 dsquery user 命令可以查找具有特定属性的用户,例如:dsquery user -name John*
  15. 查找特定属性的计算机

    • 使用 dsquery computer 命令可以查找具有特定属性的计算机,例如:dsquery computer -name SQL*
  16. 导出域中的用户列表

    • 使用 dsquery user 命令结合 dsget user 命令可以导出域中用户的列表,例如:dsquery user -limit 0 | dsget user -samid -email > userlist.txt
  17. 显示域信息

    • 使用命令 nltest /dsgetdc:domain_name 可以显示域控制器的信息,例如:nltest /dsgetdc:example.com
  18. 强制更新组策略

    • 使用 gpupdate 命令可以强制更新组策略,例如:gpupdate /force
  19. 查看域中的组信息

    • 使用 dsquery group 命令可以查看域中的组信息,例如:dsquery group -limit 0
  20. 查看域中的组成员

    • 使用 dsget group 命令可以查看特定组的成员信息,例如:dsget group "CN=Sales,OU=Groups,DC=example,DC=com" -members
  21. 查看域控制器信息

    • 使用 dcdiag 命令可以诊断域控制器的状态和性能,例如:dcdiag /s:DC_Name
  22. 设置用户账户属性

    • 使用 dsmod user 命令可以设置用户账户的属性,例如设置用户描述:dsmod user "CN=John Doe,CN=Users,DC=example,DC=com" -desc "IT Administrator"
  23. 导出域中的计算机列表

    • 使用 dsquery computer 命令结合 dsget computer 命令可以导出域中计算机的列表,例如:dsquery computer -limit 0 | dsget computer -samid > computerlist.txt
  24. 查找特定属性的用户

    • 使用 dsquery user 命令可以查找具有特定属性的用户,例如:dsquery user -name John*
  25. 移动对象到不同的组织单位

    • 使用 dsmove 命令可以将对象(如用户、计算机)移动到不同的组织单位,例如移动用户到新的组织单位:dsmove "CN=John Doe,CN=Users,DC=example,DC=com" -newparent "OU=HR,DC=example,DC=com"
  26. 删除用户账户

    • 使用 dsrm 命令可以删除用户账户,例如:dsrm "CN=John Doe,CN=Users,DC=example,DC=com"
  27. 重置用户密码

    • 使用 dsmod user 命令可以重置用户密码,例如:dsmod user "CN=John Doe,CN=Users,DC=example,DC=com" -pwd password123
  28. 列出域中的所有组

    • 使用 dsquery group 命令可以列出域中的所有组,例如:dsquery group
  29. 查看特定计算机的属性

    • 使用 dsget computer 命令可以查看特定计算机的属性,例如:dsget computer "CN=Computer1,OU=Workstations,DC=example,DC=com"
  30. 导出用户列表到文件

    • 使用 dsquery user 命令结合 dsget user 命令可以导出用户列表到文件,例如:dsquery user -limit 0 | dsget user -samid > userlist.txt
  31. 导出组列表到文件

    • 使用 dsquery group 命令结合 dsget group 命令可以导出组列表到文件,例如:dsquery group -limit 0 | dsget group -samid > grouplist.txt
  32. 查找特定组的成员

    • 使用 dsget group 命令可以查找特定组的成员,例如:dsget group "CN=IT,OU=Groups,DC=example,DC=com" -members
  33. 设置用户账户的密码过期策略

    • 使用 dsmod user 命令可以设置用户账户的密码过期策略,例如:dsmod user "CN=John Doe,CN=Users,DC=example,DC=com" -mustchpwd yes
  34. 启用用户账户

    • 使用 dsmod user 命令可以启用用户账户,例如:dsmod user "CN=John Doe,CN=Users,DC=example,DC=com" -disabled no
  35. 禁用用户账户

    • 使用 dsmod user 命令可以禁用用户账户,例如:dsmod user "CN=John Doe,CN=Users,DC=example,DC=com" -disabled yes
  36. 查找特定组的属性

    • 使用 dsget group 命令可以查找特定组的属性,例如:dsget group "CN=IT,OU=Groups,DC=example,DC=com"
  37. 创建新的组

    • 使用 dsadd group 命令可以创建新的组,例如:dsadd group "CN=NewGroup,OU=Groups,DC=example,DC=com"
  38. 移除用户从组中

    • 使用 dsmod group 命令可以移除用户从组中,例如:dsmod group "CN=IT,OU=Groups,DC=example,DC=com" -rmmbr "CN=John Doe,CN=Users,DC=example,DC=com"
  39. 查找特定组的成员数量

    • 使用 dsget group 命令可以查找特定组的成员数量,例如:dsget group "CN=IT,OU=Groups,DC=example,DC=com" -members | find /c /v ""
  40. 复制用户账户

    • 使用 dsadd user 命令可以复制用户账户,例如:dsadd user "CN=John Doe,CN=Users,DC=example,DC=com" -samid NewUser -upn NewUser@example.com
  41. 重命名组

    • 使用 dsmod group 命令可以重命名组,例如:dsmod group "CN=OldGroup,OU=Groups,DC=example,DC=com" -newname NewGroup
  42. 查找特定用户的属性

    • 使用 dsget user 命令可以查找特定用户的属性,例如:dsget user "CN=John Doe,CN=Users,DC=example,DC=com"
  43. 重置用户密码

    • 使用 dsmod user 命令可以重置用户密码,例如:dsmod user "CN=John Doe,CN=Users,DC=example,DC=com" -pwd NewPassword
  44. 移动用户到不同的组

    • 使用 dsmod group 命令可以移动用户到不同的组,例如:dsmod group "CN=NewGroup,OU=Groups,DC=example,DC=com" -addmbr "CN=John Doe,CN=Users,DC=example,DC=com"
  45. 查找特定用户所属的组

    • 使用 dsget user 命令可以查找特定用户所属的组,例如:dsget user "CN=John Doe,CN=Users,DC=example,DC=com" -memberof
  46. 设置用户账户的锁定状态

    • 使用 dsmod user 命令可以设置用户账户的锁定状态,例如:dsmod user "CN=John Doe,CN=Users,DC=example,DC=com" -disabled yes
  47. 查找特定计算机的属性

    • 使用 dsget computer 命令可以查找特定计算机的属性,例如:dsget computer "CN=Computer1,OU=Computers,DC=example,DC=com"
  48. 移动计算机到不同的组织单位

    • 使用 dsmove 命令可以移动计算机到不同的组织单位,例如:dsmove "CN=Computer1,OU=OldComputers,DC=example,DC=com" -newparent "OU=NewComputers,DC=example,DC=com"
  49. 删除计算机账户

    • 使用 dsrm 命令可以删除计算机账户,例如:dsrm "CN=Computer1,OU=Computers,DC=example,DC=com"
  50.  
posted @ 2024-03-20 08:33  suv789  阅读(975)  评论(0)    收藏  举报