需要一个批处理文件来编辑包含列表中值的文本文件,然后另存为新文件
Posted
技术标签:
【中文标题】需要一个批处理文件来编辑包含列表中值的文本文件,然后另存为新文件【英文标题】:Need a batch file to edit a text file with values from a list then save as new 【发布时间】:2013-10-24 22:23:09 【问题描述】:我需要像这样输出一个文件:
Number App_Date Reference Approval
01/00 24/10/2013 REFERENCE01 12345
第一行是不变的,但我需要将第二行更改为列表中的变量,(目前它们在 .csv 文件中,但也可以使用 txt)然后保存为文档参考。
即上面的文件是 REFERENCE01.txt
下一个文件将是例如:REFERENCE03.txt
Number App_Date Reference Approval
03/04 24/10/2013 REFERENCE03 54321
目前 .csv 文件类似于:
Number App_Date Reference Approval
01/00 24/10/2013 REFERENCE01 12345
03/04 24/10/2013 REFERENCE03 54321
13/00 24/10/2013 REFERENCE13 67890
任何人都可以提供任何帮助将不胜感激
【问题讨论】:
欢迎来到 ***!您能否在问题中包含您已经尝试过的内容? 【参考方案1】:试试这个批处理文件。按需调整
@echo off
setlocal enableextensions enabledelayedexpansion
set input=data.csv
for /F "tokens=*" %%h in ('type "%input%" ^| find "App_Date"') do (
set header=%%h
)
for /F "tokens=*" %%l in ('type "%input%" ^| findstr /r "REFERENCE[0-9]" ') do (
for /F "tokens=3" %%r in ('echo %%l') do (
echo %header%
echo %%l
) > %%r.txt
)
endlocal
【讨论】:
【参考方案2】:for /f "skip=1 tokens=*" %%i in (file) do (for /f "usebackq tokens=1-4" %%a in ('%%i') do (echo Number App_Date Reference Approval>"%%c.txt"&echo %%i>>"%%c.txt"))
试试看。 . . ;)
【讨论】:
其实很接近。我唯一看到的错误是您的输出文件缺少 .txt 扩展名以上是关于需要一个批处理文件来编辑包含列表中值的文本文件,然后另存为新文件的主要内容,如果未能解决你的问题,请参考以下文章
如何对 Windows 10 批处理文件中的参数列表进行排序