我需要知道是否可以创建批处理.bat文件以从.csv中提取几行,并将这些选定的行保存到另一个.csv文件中。我已经阅读了这个网页上的另一个主题,我只能找到如何将csv拆分为几个文件,将其切割一定数量的行(例如将其切割成最多500行的csv文件)。
在我想管理的csv文件中,有几行具有相同结构的数据。
我想从另一个.csv文件中提取这些过滤的一些行,这些行的票号位于某一位置的每一行。我不想在导出文件的原始文件中进行任何更改,我只想将这些文件复制到另一个.csv中。例如,如果我有这些行:
19/09/2013 123456789
19/09/2013 231564215
19/09/2013 456464231
19/09/2013 564659832
19/09/2013 000000054
如图所示,票号始终位于第12位和第21位之间。在这个例子中,我想提取到另一个csv文件的票号为“231564215”和“564659832”的行。因此,新.csv文件中的数据必须是:
19/09/2013 231564215
19/09/2013 564659832
我需要脚本来询问您要从中提取和保存数据的原始文件的名称,并且显然要询问您要提取的票证数量(由回车符分隔例)。我希望获得的序列是这样的:
CMD Says: Please select the file you would like to convert
I type: c:/Documents and setting/Marta/testFile.csv
CMD Says: Please enter the list of tickets you want to export
I type: 231564215
564659832
CMD Says: Exporting data...
CMD: Export process finished. Your new file is c:/Documents and setting/Marta/exportedData.csv
NB:抱歉我的英语不好,我是西班牙语
答案 0 :(得分:0)
<强>编辑强>
根据您提供的示例文件,所需的数字不能与每条记录的任何其他部分混淆,因此会返回您需要的数据:
@echo off
( for /f "usebackq delims=" %%a in ("Ticket Numbers.txt") do find ",%%a," <"originalFile.csv" )>"newfile.csv"
这是将数据转换为新文件的有用方法吗?