我一直在使用我编写的PowerShell代码来提取AD组的名称,描述,成员和信息。出于某种原因,无论我是使用输出头格式与最后的-Append还是Export-CSV -notypeinformation,两种方式都不会保留我的AD组所拥有的长信息字段。信息太长,以至于它打印在不同的行(一行或多行)上,这使得16,000个组的长列表搞砸了。而不是每条线(当我将它导出到excel时)在他们自己的线上,几乎所有线都在多条线上。当我必须手动修复所有这些时,这会变得很疯狂。
所以我的问题是,如何将所有数据保存在" info"一个单元格中的字段?
我使用的代码(部分代码)如下:
我制作一个标题格式:
Header = `
"Group ID Name" + "|" + `
"Description" + "|" + `
"Notes Field" + " |" + "Members" + "|" + "Member Count"
#Write out the header
$Header | Out-File $pathALL -Append
导出代码为:
$listing =`
$empty.Name + "|" + `
$empty.Description + "|" + `
$empty.info + "|" + `
$members
$listing | Out-File $pathALL -Append
这仍然弄乱了信息字段,因为显然有太多信息无法容纳在单元格中。所以我试过了:
$emptys = get-adgroup -properties name, description, info -filter {name -like "AP*"} `
| Select name, description, info | Export-CSV "C:\Temp\groupsALL.txt" -notypeinformation
这个印刷版仍然存在同样的问题,并且将这些数据分开也更加困难。在这种情况下,如何将其全部放入一个单元格中,或者至少打印下一个相邻单元格中的其余信息?
问题解答:我的信息领域有新的问题所以我添加了一个前提:
foreach ($lines in $emptys.info){
$lines -replace "``n",""
}
并改变了我的打印:
$listing =`
$empty.Name + "|" + `
$empty.Description + "|" + `
#$empty.Info + "|" + `
$lines + "|" + `
$members
答案 0 :(得分:2)
$listing =`
$empty.Name + "|" + `
$empty.Description + "|" + `
$empty.info -replace "`r`n", "NewLine" + "|" + `
$members
$listing | Out-File $pathALL -Append
显然取代" NewLine"在上面的第4行,你可以用任何你想要的代替换行符。