До PowerShell v3, если вы хотите добавить к существующему CSV, вам нужно что-то вроде этого:
... | ConvertTo-Csv -NoType | Select-Object -Skip 1 | Add-Content
Однако в вашем сценарии это, вероятно, не нужно.Если вы замените свои циклы foreach
конвейером, вы можете написать CSV за один раз, не добавляя его в цикл (что в любом случае не рекомендуется).
$folders = "C:\Temp\CSM\*", "C:\Temp\CSM\*\*"
Get-ChildItem -Path $folders -Directory -Force | ForEach-Object {
$path = $_.FullName
Get-Acl -Path $path |
Select-Object -Expand Access |
Select-Object @{n='Path';e={$path}}, IdentityReference, FileSystemRights
} | Export-Csv 'C:\output.csv' -NoType