powershell - 使用批处理脚本删除csv文件的第一行和最后一行

标签 powershell csv batch-file cmd

我正在尝试删除文件夹中CSV文件的第一行和最后一行,然后将它们合并成一个csv文件。

我正在尝试使用下面的批处理脚本删除第一行和最后一行,但是它不起作用:

@echo on 
setlocal enabledelayedexpansion

for %%a in (*.csv) do (
find /v "RemoveThis" < %%a >> %%~Na.csv
)

任何人之前都做过类似的批处理脚本。有人可以帮我这个忙吗?

CSV将如下所示。
0   RemoveThis                                  
1   6105829 4   541746546   46542114546 56541651651 132 132 1   31/12/2017 20:43    31/12/2017 20:45
1   6105837 4   4545    6546    4465465 396 396 1   31/12/2017 18:20    31/12/2017 18:26
1   6105844 4   21656565    46546546    4654466546  36  36  1   31/12/2017 19:27    31/12/2017 19:27
1   6105845 4   45454   45454   465465  2   2   1   31/12/2017 19:26    31/12/2017 19:26
99  RemoveThis      188                         

最佳答案

使用PowerShell,您可以使用Get-Content cmdlet来检索文本,使用Select-Object cmdlet跳过第一行和最后一行,最后使用Add-Content cmdlet将其附加到合并文件中。

要遍历每个csv,请使用Get-ChildItem cmdlet:

Get-ChildItem -Path 'D:\' -Filter '*.csv' | ForEach-Object {
    Get-Content $_ | Select -Skip 1 | Select -SkipLast 1 | Add-Content d:\merge.csv
}

关于powershell - 使用批处理脚本删除csv文件的第一行和最后一行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49004635/

相关文章:

powershell - 与CMD中的管道(“-”一起使用时,破折号(“|”)是什么?

batch-file - 如何在具有特定目标 anchor 的默认浏览器中从批处理文件中打开 HTML 文件?

powershell - 将变量输出到文本文件

node.js - Firebase 脚本未签名 - Powershell

powershell - 为什么我需要先把变量放到一个变量上

python - 使用 Python 和 Google API 进行反向地理编码

powershell - 远程 session 上的 Invoke-Command 返回本地值

php - 如何在托管 MySQL 服务器上上传 .csv 文件(ftp 访问不可用)

javascript - 使用npm csv-writer写入csv文件不起作用,但没有出现错误消息

windows - 如何将linux批处理文件转换为windows bat文件?