2
我有一个包含多行和两列的CSV:“名称”和“信息”。从CSV中删除单个行
我循环通过CSV和检查每行一个条件,如果条件满足,我想删除行:
for ($i=0; $i -le $CSV.length; $i++)
{
if ($CSV.name == "Fred")
{
#remove $CSV[$i] -- that one line; both "Name" and "Information"
}
}
我已经看到了使用的解决方案Get-Content
或Import-Csv
和临时文件,但我还没有将自己的头部缠绕在身上,并且认为必须有一个更简单的方法。
无论如何,任何帮助表示赞赏!
好办法,但恐怕这个答案的风险覆盖文件'YourPath.csv'之前完全读取。它应该保存到一个新文件中,或者在写入之前读入一个变量。 –
@Burt_Harris你是对的。我会采用我的脚本。 –
用temp变量放松一些优雅。另一种方法是将import-csv放在parens中,例如:'(import-csv。\ test.csv)| where Name -ne'Fred'| export-csv test.csv -NoTypeInformation' –