我正在编写一个应该删除命名列的小 PowerShell 脚本。有没有办法不选择标题名称为“xyz”的列?
我试图通过以下方式获取标题名称
$hnames = $csv | Get-Member -MemberType NoteProperty | foreach {$_.name}
并将结果加入逗号分隔的字符串并删除不需要的标题
$new = $hnames -join ","
$new = $new -replace "xyz,", ""
并使用
select
导入/导出 CSVImport-CSV $tempfile -Delimiter ";" | Select $new |
Export-Csv tempynew.csv -Delimiter ";" -Encoding UTF8 -NoTypeInfo
但它只输出 CSV 文件中的标题。
最佳答案
使用 -ExcludeProperty
参数与 Select-Object
反而:
Import-Csv $tempfile -Delimiter ";" | Select * -ExcludeProperty xyz |
Export-Csv tempynew.csv -Delimiter ";" -Encoding UTF8 -notypeinfo
关于powershell - CSV按标题名称删除列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40085295/