[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[文本处理] 批处理如何循环提取CSV指定表格的文件内容,并输出?

姓名        年龄        性别        工作地方
张三        22        男        北京
李四        25        男        上海

例如:当D2值不为空时,提取D2(北京)内容,并输出D2的值,然后在判断E2值不为空时,提取D3(上海)内容,并输出D3的值,以此类推,直达下一个值为空时停止,求助大佬!!!

假设待处理文件为“1.csv”,输出文件为“2.txt”,用第3方工具gawk( http://bcn.bathome.net/tool/4.1.0/gawk.exe )可实现:
  1. gawk -F"," "NR>1{print $4;if(!$5)exit}" 1.csv>2.txt
复制代码
注意,如果要直接在屏幕上显示,则代码如下:
  1. gawk -F"," "NR>1{print $4;if(!$5)exit}" 1.csv>con
复制代码

TOP

回复 1# cqy931


请参考Q-04和Q-05把bat文件和csv文件都保存为ANSI编码:
https://mp.weixin.qq.com/s/Koje4FufWxWBs7ioDy_LJA
  1. @echo off
  2. cd /d "%~dp0"
  3. for /f "skip=1 tokens=4 delims=," %%i in ('type "input.csv"') do (
  4.     echo,%%i
  5. )
  6. pause
复制代码
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

返回列表