标题: [文本处理] [已解决]求助批处理删除文本中 第六列与第七列 [打印本页]
作者: KLL 时间: 2023-8-30 01:45 标题: [已解决]求助批处理删除文本中 第六列与第七列
本帖最后由 KLL 于 2023-8-30 13:23 编辑
文本中共8列 , 以逗号分隔 , 批处理删除 第六列与第七列
如下:
2023/08/01 23:50,15721,15722.25,15716.75,15717.75,3.25,-0.0207,997,
2023/08/01 23:55,15718,15719.75,15711,15717.5,-0.25,0.0016,1851,
2023/08/02 00:00,15717.25,15719,15714,15716.75,-0.75,1.048,534,
批处理删除后成为如下
2023/08/01 23:50,15721,15722.25,15716.75,15717.75,997,
2023/08/01 23:55,15718,15719.75,15711,15717.5,1851,
2023/08/02 00:00,15717.25,15719,15714,15716.75,534,
作者: KLL 时间: 2023-8-30 01:55
原文件a.txt 处理后 生成 b.txt 文件
谢谢
作者: Five66 时间: 2023-8-30 02:48
不考虑其他细节,应该是这样吧- @for /f "tokens=1-5,6,7,* delims=," %%i in (a.txt) do @echo %%i,%%j,%%k,%%l,%%m,%%p >b.txt
复制代码
作者: hfxiang 时间: 2023-8-30 09:54
回复 1# KLL
用gawk(http://bcn.bathome.net/tool/5.1.0/gawk.exe)也可实现- gawk -v"FS=," -v"OFS=," "{print $1,$2,$3,$4,$5,$8 FS}" a.txt>b.txt
复制代码
作者: 77七 时间: 2023-8-30 10:36
- @echo off
- (for /f "useback tokens=1-7* delims=," %%a in ("a.txt") do (
- echo %%a,%%b,%%c,%%d,%%e,%%h
- ))>"b.txt"
- pause
复制代码
作者: Batcher 时间: 2023-8-30 10:38
回复 1# KLL
请参考Q-04和Q-05把bat文件和txt文件都保存为ANSI编码:
https://mp.weixin.qq.com/s/Koje4FufWxWBs7ioDy_LJA- @echo off
- cd /d "%~dp0"
- (for /f "tokens=1-8 delims=," %%a in (a.txt) do (
- echo %%a,%%b,%%c,%%d,%%e,%%h,
- ))>b.txt
复制代码
作者: KLL 时间: 2023-8-30 13:04 标题: 【已解决】求助 删除文本中 第六列与第七列
本帖最后由 KLL 于 2023-8-30 13:18 编辑
运行都OK , 谢谢先进们的热心指导,Thanks
作者: Nsqs 时间: 2023-8-30 14:52
- @echo off
- powershell -noprofile -executionpolicy bypass "(gc 1.txt) -replace '((?:\d+\.?\d*,){5}).+,(.+)','$1$2'" >new.txt
- pause
复制代码
欢迎光临 批处理之家 (http://bbs.bathome.net/) |
Powered by Discuz! 7.2 |