Я хочу найти значение в текстовом файле, содержащем более 120 строк, а затем установить строку, в которой было найдено значение, в качестве переменной, чтобы я мог вернуться и заменить значение в текстовом файле другим значением.
Используя эту строку
for /F "delims=" %%a in ('findstr /c:/-59/12/ ScreenData.txt') do set
var=%%a
я могу найти значение (координата) / -59 / 12 / в тексте (ScreenData.txt) и затем присвоить его переменной (var).Затем я могу вывести% var% и получить вывод / -59 / 12 /, но нет способа заменить / -59 / 12 / на (буква H, например).
Я пробовал...
for %%g in (findstr /n "/-58/12/" ScreenData.txt) do set var=%%g
текстовая документация имеет / -58 / 12 / в качестве 2-й строки, однако выводом был ScreenData.txt, а не 2.
Этот код приводит кзамена ...
REM --- ROW a ---
SET /A rowa1x=%xaxis%-59
SET /A rowa1y=%yaxis%+12
SET rowa1=/%rowa1x%/%rowa1y%/
SET /A rowa2x=%xaxis%-58
SET /A rowa2y=%yaxis%+12
SET rowa2=/%rowa2x%/%rowa2y%/
SET /A rowa60x=%xaxis%
SET /A rowa60y=%yaxis%+12
SET rowa60=/%rowa60x%/%rowa60y%/
REM --- Export Values ---
(
echo %rowa1%
echo %rowa2%
echo %rowa60%
) >ScreenData.txt ---
pause
REM --- View Generator
for %%g in (findstr /n "/-58/12/" ScreenData.txt) do set var=%%g
echo %var%
pause
Я уверен, что я просто поступаю неправильно ...
так что логика ...
найтизначение, равное / -58 / 12 / в текстовом файле.по какой линии это?это на 3-й строке.заменить 3-ю строку на "H".