如何在CMD中合并名称含“file”的CSV文件?
仅合并名称包含“file”的CSV文件的CMD解决方案
这事儿很简单,用CMD的通配符匹配就能精准筛选你要的文件,直接执行下面的命令就行:
copy file*.csv merged_files.csv
命令解析
file*.csv是核心的筛选规则:file是固定前缀,*代表任意长度的任意字符(数字、字母都算),所以会自动匹配所有以file开头的CSV文件(正好对应你的file1.csv、file2.csv、file3.csv),同时排除combine.csv这类不符合命名规则的文件。merged_files.csv是合并后的目标文件名,你可以改成自己想要的任意名称。
额外小提示(处理重复表头)
如果你的每个CSV文件都带表头行,直接用上面的命令会导致表头重复出现在合并结果里。要是需要去掉重复表头,可以用PowerShell命令来实现:
Get-ChildItem -Filter "file*.csv" | ForEach-Object { # 保留第一个文件的完整内容(包含表头) if ($_.Name -eq (Get-ChildItem -Filter "file*.csv" | Select-Object -First 1).Name) { Get-Content $_ } # 后续文件跳过第一行表头,只取内容 else { Get-Content $_ | Select-Object -Skip 1 } } | Out-File "merged_files.csv" -Encoding UTF8
内容的提问来源于stack exchange,提问作者Ahamed Moosa
相关产品推荐
相关产品推荐

