我曾要求删除多个CSV文件的标题。但是起初我没有找到正确的解决方案。 现在对我有用。
所以我将分享解决方案。
$FilePath = "D:\my_CSV_Files_Path"
$files = Get-Childitem $FilePath -Filter "*.csv"
foreach($f in $files){
$csv = Get-Content $FilePath\$f
$csv = $csv[1..($csv.count - 1)]
$csv > $FilePath\$f
}
答案 0 :(得分:1)
这是另一种解决方案,不会被任何空文件绊倒:
$FilePath = "D:\my_CSV_Files_Path"
$files = Get-Childitem $FilePath -Filter "*.csv"
foreach($f in $files){
$csv = Get-Content $FilePath\$f | Select-Object -Skip 1
if ($csv) { $csv | Out-File $FilePath\$f -Force }
}
这使用Select-Object
cmdlet通过-Skip
参数过滤出文件的第一行。