batch-file - 如何从 .csv 文件中获取第二行第二列?
问题描述
我有一个如下所示的 CSV 文件:
Order ID,Order Date,Ship Date,Ship Mode
CA-2011-103800,2013-01-03,2013-01-07 00:00:00,Standard Class
CA-2011-112326,2013-01-04,2013-01-08 00:00:00,Standard Class
我只需要从第一个数据行中获取订单日期,即2013-01-03
在这种情况下。
我尝试了下面的代码,但没有解决问题。
set file=output.csv
for /f "skip=1 tokens=2 delims=," %%A in (%file%) do (echo %%A)
我是初学者。谁能帮我解决这个问题?
解决方案
这可以通过从file.csv
. 通过使用,我们可以抓取我们想要!Line[2]!
的文件的任何行。.csv
只需将行和列配置更改为您需要的。这对于搜索.csv
文件非常有用。
@echo off
@setlocal enabledelayedexpansion
Rem | Row & Column Information
Set "Row=2"
Set "Column=2"
Rem | Turn Lines To Array Strings
for /f "tokens=* delims=" %%A in ('Type file.csv') do (
set /a "count+=1"
set "Line[!count!]=%%A"
)
Rem | Grab Second Column From Second Row
for /f "tokens=%Column% delims=," %%A in ('Echo !Line[%Row%]!') do (
set "Data=%%A"
)
Echo Second Row, Second Column Data: %Data%
我留下了一个新的Rem
笔记来帮助你完成脚本过程。
推荐阅读
- c# - 获取属性后面的字段
- rest - Apple ID 用户信息
- powershell - 如何使用 Powershell 在 Windows 窗体中显示带有 GUI 的图片框?
- python - tracemalloc 的开销有多大?
- python - Plotly Dash:根据绘图选择过滤 DataTable
- sql - 如何在 Informatica 表达式转换中实现 case when 语句
- c++ - C++“类枚举”新手问题
- angular - 角度 7 如何将 ngx-datatable 内容导出到 Excel 工作表?
- file-upload - 带有文件夹选择的 Vaadin 8 多重上传
- c++ - 字符串十六进制到字节数组