3

I want to pull the names of computer objects in AD in to a file. The method I'm trying so far is this

$computers = Get-ADComputer -Filter * | Format-List name
write($computers) | Out-File -FilePath .\computers.txt

The issue I have with this though is that the file that is output looks like this:

name : SERVER1

name : SERVER2

name : WORKSTATION1

name : WORKSTATION2

And I'm looking for just a straight list of names with out the "name : " part that comes in front.

5 Answers 5

5
$computers = Get-ADComputer -Filter * | select-object -expandproperty name | out-file .\computers.txt

This should be faster than MDMoore313's solution by virtue of not looping through the results & writing to disk on each trip through (1.7s for his vs. 1.1s for mine in my AD environment, writing to a RAMDisk).

Sign up to request clarification or add additional context in comments.

Comments

2

If you are using PowerShell 3+, you could use short-hand dot notation below.

(Get-ADComnputer -filter *).name > .\computers.txt
#or
(Get-ADComnputer -filter *).name | out-file .\computers.txt

Comments

1

Here's the plain bread & butter:

Get-ADComputer -Filter * | Format-Table name

Just change the word "List" in your command to the word "Table" and you get exactly what you asked for - no "name:" text in front of the hostnames (and no line-feed between each result, either!).

Comments

0
$computers = Get-ADComputer -Filter * | foreach { $_.Name | Add-Content -Path .\computers.txt}

Comments

0

I found (get-adcomputer -filter *).name > .\computers.tx not working but it works fine if there is some modification for the original positing:

$computers = Get-ADComputer -Filter * | Format-table name

write($computers) | Out-File -FilePath .\computers.txt

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.