如何用Visual Studio Code对比两个CSV文件找出被删除的数据
CSV文件删除记录定位解决方案
VSCode端实现方案
默认的「Compare Active File」功能是逐行比对,因为两个文件行顺序不一致,才会没法直接识别出被删除的条目,按以下步骤操作即可实现需求:
- 第一步:对两个CSV文件统一按id列排序。可以安装VSCode的CSV Editor类插件,打开文件后点击id列表头即可一键排序;也可以直接使用VSCode内置终端执行排序命令:
sort -t ',' -k1 File1.csv > sorted_File1.csv && sort -t ',' -k1 File2.csv > sorted_File2.csv - 第二步:用「Compare Active File With...」功能比对两个排序后的CSV文件,此时会直接高亮显示File1中独有的行,就是被删除的记录。
千条级数据快速比对方案
如果需要频繁处理这类场景,也可以直接用命令行直接输出被删除的记录,无需手动在比对结果中查找:
- macOS/Linux 终端执行:
awk -F ',' 'NR==FNR{a[$1]++;next}!a[$1]' File2.csv File1.csv - Windows PowerShell 执行:
$file2Ids = Import-Csv File2.csv | Select-Object -ExpandProperty id -Unique Import-Csv File1.csv | Where-Object { $_.id -notin $file2Ids }
相关搜索关键词
如果需要查找更多相关方案,可使用以下关键词检索:
- 两个CSV查找缺失行
- VSCode CSV比对忽略行顺序
- VSCode compare two csv for missing rows
内容的提问来源于stack exchange,提问作者Adityo
相关产品推荐
相关产品推荐

