每个月我手动运行一些PS命令并手动修改导出的CSV。
我已经自动执行此操作,但是无法弄清楚如何修改“许可证”列。
每行应显示特定的测试,在这种情况下为“ LICENSE = TYPE1”
Type1是内部使用名称,所以我不能从任何地方使用它。
当我生成文件“ System.Collections”时,将其放置在“许可证”列中。我需要替换文字。
如果我的CSV文件包含列标题“ LICENSE”,如何修改该列中的每个单元格以包含文本“ LICENSE = TYPE1”?
我已经尝试过了:
Get-MsolUser | Where-Object {($_.Licenses).AccountSkuId -contains "ENTRPRISEPACK"}
| Select DisplayName, UserPrincipalName, Office, City, State, Licenses | Export-Csv -Path "C:\Scripts\LICENSES.csv" -Delimiter "," -NoTypeInformation
Import-Csv -Path "C:\Scripts\LICENSE.CSV" | ForEach-Object {
If ($_.Licenses -like "System.Collections") {
$_.Licenses = "LICENSE=TYPE1"
}
$_
} | Export-Csv -Path "C:\Scripts\LICENSE123.csv" -NoTypeInformation
我想念什么?!
这是创建CSV文件的方式:
Get-MsolUser |
Where {$_.IsLicensed -eq $true } |
Select DisplayName, UserPrincipalName, Office, City, State, @{n="Licenses";e={$_.Licenses.AccountSKUid}} |
Export-Csv -Path "C:\Scripts\LICENSES.CSV" -Delimiter "," -NoTypeInformation