PowerShell csv字符替换

问题描述:

我设法通过PowerShell脚本在收集一组服务器磁盘信息时生成csv,但csv文件上的结果输出需要一些数据信息。PowerShell csv字符替换

下面

将是裁判的脚本:

foreach($pc in $comp) 
$diskvalue += Get-WmiObject @Params | Select @{l='drives';e='DeviceID'}, @{l='server',e='SystemName'}, @{Name=”size(MB)”;Expression={“{0:N1}” -f($_.size/1mb)}}, @{Name=”freespace(MB)”;Expression={“{0:N1}” -f($_.freespace/1mb)}}, @{Name=”UsedSpace(MB)”;Expression={“{0:N2}” -f(($_.size - $_.FreeSpace)/1mb)}} 
    $diskvalue | Export-Csv C:\disk_info\DiskReport.csv -NoTypeInformation 

的 “驱动器” 输出CSV文件列将包含:

C:

然而,我想删除数据输出后面的“:”。

Ç

变化:

@{l='drives';e='DeviceID'} 

@{l='drives';e={"$($_.DeviceID)".Trim(": ")} 

Trim(": ")将从DeviceID字符串中删除任何空白和字符:

+0

工作很好,谢谢; D, –

+0

还有一个问题,结果“UsedSpace”包含十进制值,我可以删除它或四舍五入到整数? –

+0

将表达式中的“{0:N2}”更改为“{0:N0}”('N之后的整数是*精度说明符*)。 <.5> = .5将向上舍入 –