Sometimes you might be interested in gathering a list of all computers from an Active Directory domain in preparation for migration.
You can gather a list of all computer objects using the following command.
# Fetch a sorted list of all computer objects Get-ADComputer -Filter * -Property * | Sort-Object Name
The wildcard with the Property parameter fetches all available attributes for a computer object. Check the available attributes in the result set to identify the attributes you are interested in.
# Example output for the first computer object gathered from Active Directory
(Get-ADComputer -Filter * -Property * | Sort-Object Name)[0]
AccountExpirationDate :
accountExpires : 9223372036854775807
AccountLockoutTime :
AccountNotDelegated : False
AllowReversiblePasswordEncryption : False
BadLogonCount : 0
badPasswordTime : 0
badPwdCount : 0
CannotChangePassword : False
CanonicalName : DOMAIN.local/Computers/COMPUTER01
Certificates : {}
CN : COMPUTER01
codePage : 0
CompoundIdentitySupported : {False}
countryCode : 0
Created : 9/2/2013 3:01:13 PM
createTimeStamp : 9/2/2013 3:01:13 PM
Deleted :
Description :
DisplayName :
DistinguishedName : CN=COMPUTER01,CN=Computers,DC=DOMAIN,DC=local
DNSHostName : COMPUTER01.DOMAIN.local
DoesNotRequirePreAuth : False
dSCorePropagationData : {12/31/1600 7:00:00 PM}
Enabled : True
HomedirRequired : False
HomePage :
instanceType : 4
IPv4Address :
IPv6Address :
isCriticalSystemObject : False
isDeleted :
KerberosEncryptionType : {RC4, AES128, AES256}
LastBadPasswordAttempt :
LastKnownParent :
lastLogoff : 0
lastLogon : 130942520427754509
LastLogonDate : 12/10/2015 3:02:53 PM
lastLogonTimestamp : 130942513734007331
localPolicyFlags : 0
Location :
LockedOut : False
logonCount : 194
ManagedBy :
MemberOf : {}
MNSLogonAccount : False
Modified : 12/10/2015 3:02:53 PM
modifyTimeStamp : 12/10/2015 3:02:53 PM
msDS-SupportedEncryptionTypes : 28
msDS-User-Account-Control-Computed : 0
Name : COMPUTER01
nTSecurityDescriptor : System.DirectoryServices.ActiveDirectorySecurity
ObjectCategory : CN=Computer,CN=Schema,CN=Configuration,DC=DOMAIN,DC=local
ObjectClass : computer
ObjectGUID : da59afcc-e00a-430b-9cbc-01adeed568f3
objectSid : S-1-5-21-3143343262-845931634-422089675-1179
OperatingSystem : Windows 7 Professional
OperatingSystemHotfix :
OperatingSystemServicePack : Service Pack 1
OperatingSystemVersion : 6.1 (7601)
PasswordExpired : False
PasswordLastSet : 12/2/2014 7:21:09 AM
PasswordNeverExpires : False
PasswordNotRequired : False
PrimaryGroup : CN=Domain Computers,CN=Users,DC=DOMAIN,DC=local
primaryGroupID : 515
PrincipalsAllowedToDelegateToAccount : {}
ProtectedFromAccidentalDeletion : False
pwdLastSet : 130619964697110685
SamAccountName : COMPUTER01$
sAMAccountType : 805306369
sDRightsEffective : 15
ServiceAccount : {}
servicePrincipalName : {RestrictedKrbHost/COMPUTER01, HOST/COMPUTER01, RestrictedKrbHost/COMPUTER01.DOMAIN.local, HOST/COMPUTER01.DOMAIN.local}
ServicePrincipalNames : {RestrictedKrbHost/COMPUTER01, HOST/COMPUTER01, RestrictedKrbHost/COMPUTER01.DOMAIN.local, HOST/COMPUTER01.DOMAIN.local}SID : S-1-5-21-3143343262-845931634-422089675-1179
SIDHistory : {}
TrustedForDelegation : False
TrustedToAuthForDelegation : False
UseDESKeyOnly : False
userAccountControl : 4096
userCertificate : {}
UserPrincipalName :
uSNChanged : 1721509
uSNCreated : 45981
whenChanged : 12/10/2015 3:02:53 PM
whenCreated : 9/2/2013 3:01:13 PM
As a next step, you gather the selected information and
# Fetch data for an operating system overview, sorted by property Name only Get-ADComputer -Filter * -Property * | Sort-Object Name | Select Name,OperatingSystem,OperatingSystemServicePack,OperatingSystemVersion # Fetch data for an operating system overview, # sorted by property OperatingSystem first, then Name Get-ADComputer -Filter * -Property * | Sort-Object OperatingSystem,Name | Select Name,OperatingSystem,OperatingSystemServicePack,OperatingSystemVersion
You can export the gathered information to a comma-separated file easily using the Export-Csv cmdlet.
# Export the gathered and sorted information to a CSV file using a # semicolon as the delimiter # Adjust the file path for the CSV file to fit your environment Get-ADComputer -Filter * -Property * | Sort-Object OperatingSystem,Name | Select Name,OperatingSystem,OperatingSystemServicePack,OperatingSystemVersion | Export-Csv -Path C:SCRIPTSComputerOverview.csv -NoClobber -NoTypeInformation -Delimiter ';'
Link
Enjoy!
Kurz-URL | Short URL: https://granikos.eu/go/IZUq
