Powershell 过滤器 csv

标签 powershell csv

由于我是 Powershell 新手,因此寻求最佳实践方面的帮助,

我有一个 csv 文件,我想过滤掉 csv 中的每一行,除了包含“未安装”的行

然后,我想根据包含计算机列表的单独 csv 文件过滤这些结果,并排除包含匹配项的任何行。

任何帮助或起点将不胜感激!

最佳答案

对于第一部分,您可以使用 Select-String -Notmatch ...例如。:

$file = "data.csv"
$csv = Get-Content $file
$csv | Select-String -Notmatch 'Not Installed' | Out-File $file -Enc ascii

如果您的 CSV 文件恰好是 Unicode,则删除“-Enc ascii”部分,因为 Out-File 的默认值是 Unicode。至于你问题的第二部分,你需要更具体一点。但是,您应该查看有关 Import-Csv 和 Export-Csv 的帮助:
man Import-Csv -full
man Export-Csv -full

关于Powershell 过滤器 csv,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16028787/

相关文章:

powershell - PowerShell 的测试路径超时

java - 将java bean写入Csv表格式

Python3 - 附加到不包含某些单词的数组行

regex - 谷歌应用程序脚本 : REGEX to fix malformed pipe delimited csv file runs too slowly

java - 在 JAVA 中对两个非常大的 CSV 文件进行性能比较和查询

python - 使用 xlsxwriter ByteIO 对象写入 CSV 文件

powershell - 传递给 NuGet 包的 'install.ps1' 脚本的参数是什么?

Powershell - 将大量文本写入文件的最快方法

powershell - 继续事件订阅,脚本执行powershell后

c# - 从 PowerShell 脚本或 .NET 重新运行失败的 .NET 单元测试