批处理脚本:解析文件并获取特定的行号子字符串

时间:2019-02-13 00:28:16

标签: parsing batch-file

我需要处理一些文件并重命名它。我计划使用批处理来执行它。 要求如下

  • 读取特定目录中的文件
  • 打开其中的所有TXT文件。
  • 导航到该文件中的特定行。
  • 解析该行以获取特定的字符串。
  • 使用该特定字符串重命名文件名(或复制到 另一个文件夹)

我需要提取的行号是12
该行具有以下字符串Product Number # 773339
我想从该行中提取的是773339,然后重命名或创建一个与原始内容相同的新文件,名为773339.TXT。

下面是到目前为止的步骤,但是还不能提取子字符串

@ECHO off
SETLOCAL enabledelayedexpansion
FOR %%f IN (C:\Users\test\Desktop\AR\*.txt) DO (
    For /F "Tokens=1-2* Delims=:" %%a IN ('FindStr/N "^" "%%f" 2^>Nul') DO (
        If %%a Equ 12 (
            REM Get the line number here
            Echo %%a
            REM Get the string from that line number            
            ECHO %%b
        )
    )
    PAUSE
)

0 个答案:

没有答案