Out-File zeigt nicht alle meine Spalten an

660
David Prentice
Get-ADComputer -SearchBase "DC=some,DC=website,DC=net" -Filter * -Properties Name,Created,whenChanged,LastLogonDate,Description,IPv4Address,OperatingSystem,OperatingSystemServicePack,OperatingSystemVersion | Sort Description | Format-Table Name,Created,whenChanged,LastLogonDate,Description,IPv4Address,OperatingSystem,OperatingSystemServicePack,OperatingSystemVersion -Wrap | Out-File $env:USERPROFILE\Desktop\AD-Quick-Inventory.txt 

Der obige Code ist das, was ich will, aber bei der Ausgabe in eine .txt-Datei habe ich nur 5 Spalten (stoppt bei Beschreibung).

Wie kann ich zulassen, dass alle Spalten angezeigt werden?

Ich habe export-csv ausprobiert und zwar Daten exportiert, die ich wollte, aber es wurden auch einige zufällige Eigenschaften exportiert, die ich nicht ausgewählt habe.

1
Sie haben den Parametersatz -wrap. Was passiert, wenn Sie das entfernen? Sind sie auch in mehreren Zeilen? LPChip vor 6 Jahren 0
Haben Sie versucht, zuerst an Out-String -Width 4096 und dann an Out-File weiterzuleiten Antony vor 6 Jahren 0
Es ist schon komisch, dass Sie Out-String erwähnt haben, weil ich gestern einen Artikel gefunden habe, der genau dieses Thema behandelt. https://poshoholic.com/2010/11/11/powershell-quick-tip-creating-wide-tables-with-powershell/ David Prentice vor 6 Jahren 0
out-file hat auch einen width-Parameter, so dass keine out-Zeichenfolge benötigt wird (ich denke mal) SimonS vor 6 Jahren 0

2 Antworten auf die Frage

0
Clayton

Bestimmte cmdLets können nur am Ende der Pipeline verwendet werden (Format-Tabelle, Out-File, Export-Csv). Sobald Sie eine dieser Cmdlets setzen andere, nachdem sie Junk produzieren verwenden, da die frühere die Objektdaten zu Nicht-Objektdaten wie Strings umgewandelt, etc. Wenn Sie ersetzen format-tablemit select-objectIhnen mit nur einer CSV erhalten die Eigenschaften, die Sie mit ausgewählten select-object.

Get-ADComputer -SearchBase "DC=some,DC=website,DC=net" -Filter * ` -Properties Name,Created,whenChanged,LastLogonDate,Description,IPv4Address,OperatingSystem,OperatingSystemServicePack,OperatingSystemVersion ` | Select-Object -Property Name,Created,whenChanged,LastLogonDate,Description,IPv4Address,OperatingSystem,OperatingSystemServicePack,OperatingSystemVersion ` | Sort Description | ` Export-Csv -Path AD-Quick-Inventory.csv -NoTypeInformation 
0
Uni_x

Wie wäre es, wenn Sie Ihren Get-ADComputer folgendermaßen in das CSV-Format leiten:

Get-ADComputer -SearchBase "DC=some,DC=website,DC=net" -Filter * ` -Properties Name,Created,whenChanged,LastLogonDate,Description,IPv4Address,OperatingSystem,OperatingSystemServicePack,OperatingSystemVersion ` | Select-Object -Property Name,Created,whenChanged,LastLogonDate,Description,IPv4Address,OperatingSystem,OperatingSystemServicePack,OperatingSystemVersion ` | Sort Description | ConvertTo-CSV -NoTypeInformation | Out-File $path