Найдите строку и скопируйте всю ее строку в новый файл - PullRequest
0 голосов
/ 01 июня 2018

как я могу скопировать две строки, а не только одну ??

@echo off
setlocal enableextensions
set "source=input.txt"
set "target=output.txt"
pushd "%source%"
(for /f "tokens=1,* delims=:" %%a in ('findstr /i /l /c:"word123" "*.txt"') do (
echo(%%b
)) > "%target%"
popd

Пример ввода:

aaaaayr
vvvvvyr
9qeieir
qei9i9r
i9iqr9r
word123
s8ru9sr

Пример вывода:

i9iqr9r
word123

1 Ответ

0 голосов
/ 01 июня 2018

Возможно, вы можете использовать FindStr для поиска по строке:

@Echo Off
SetLocal DisableDelayedExpansion
Set "Src=input.txt"
Set "Dst=output.txt"
Set "Str=word123"

(Set LF=^
% 0x0A %
)
For /F %%A In ('Copy /Z "%~f0" Nul') Do Set "CR=%%A"
SetLocal EnableDelayedExpansion
Findstr /RC:".*!CR!*!LF!%Str%" /IC:"%Str%" "%Src%">"%Dst%"
EndLocal
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...