Пакетное перемещение строк в текстовом файле на основе текста - PullRequest
0 голосов
/ 29 мая 2019

Я получаю файл регистратора данных, который имеет один выходной файл.Я хочу переместить строки на основе строки в несколько текстовых файлов.

Я могу заставить его работать с командным файлом ниже, но я хочу автоматизировать его как текстовый файл, который посылает регистратор данных, всегда меняет свое имя (с датой)

findstr TiltA HMA_input180529.txt >>output.txt

пример ввода csv ( HMA_input180529.txt )

2019-05-29 08:03:48,TiltA,3.420,19.9,0.5017,0.6903
2019-05-29 09:03:48,TiltB,3.420,19.9,0.3017,0.6903

пример вывода csv (TiltA.txt)

2019-05-29 08:03:48,TiltA,3.420,19.9,0.5017,0.6903

Я не знаю, с чего начать при вызове всех файлов *.*, а затем сохранить новый текстовый файл с именем, совпадающим с найденной строкой, например, TiltA

1 Ответ

0 голосов
/ 29 мая 2019

Вы можете сделать это довольно легко с помощью петли FOR /F.

for %%f in (*.txt) do (
    for /f "tokens=1-6 delims=," %%i in (%%f) do echo %%i,%%j,%%k,%%l,%%m,%%n>"%%j.txt"
)

Предполагается, что формат token1,TITLE,token3,token4,token5,token6 остается прежним.

OR

for %%f in (*.txt) do (
    for /f "tokens=2 delims=," %%i in (%%f) do type %%f | find /i "%%i">"%%i.txt"
)

Предполагается, что формат token1,TITLE,* остается прежним.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...