Подскажите пожалуйста как реализовать:
Есть файл my.txt в нем текст
vasya=1.1
petya=1.2
Нужно найти в файле значение vasya=1.1 и присвоить ему переменную %1 дальше вывести ее на экран (значение 1.1 постоянно меняется)
Затем в втором файле my2.txt текст:
run=0.1
1.1=1.2
1.2=1.3
1.3=1.4
end=1.5
Найти значение end присвоить ему переменную %2 вывести значение на экран и сравнить значение %1 и %2 если значение %1 больше чем %2 вывести на экран Сумма больше и перейти в конец бат файла
Дальше найти значение run сравнить его с %1 значением и если оно меньше Вывести на экран сообщение Сумма меньше и перейти в конец бат
После этого найти значение %1 в столбике до знака = и присвоить значению после = переменную %3 и вывести его на экран
CMD/BAT - [решено] Поиск с условием и сравнение
-
amel27
Re: CMD/BAT - [решено] Поиск с условием и сравнение
Код:
Код: Выделить всё
@echo off
call :TEST vasya
call :TEST petya
EXIT/B
:TEST
for /f "tokens=1* delims==" %%a in ('findstr/bic:"%~1=" "my.txt"') do set "$b=%%b"
for /f "tokens=1* delims==" %%a in ('findstr/bic:"%$b%=" /c:"run=" /c:"end=" "my2.txt"') do set "_%%a=%%b"
if "%_run%" gtr "%$b%" echo %~1: Сумма меньше& GoTo :EOF
if "%_end%" lss "%$b%" echo %~1: Сумма больше& GoTo :EOF
call echo %~1: %%_%$b%%%
GoTo :EOF-
63RW51
Re: CMD/BAT - [решено] Поиск с условием и сравнение
Спасибо большое а подскажите пожалуйста еще как вот это вывести на экран:
Цитата amel27:
call echo %~1: %%_%$b%%%
У меня правильно получается только с сохранением в файл
call echo %~1: %%_%$b%%% >>my3.txt
А если просто писать
echo %~1: %%_%$b%%%
то отображается первое значение в таком виде %_0.1%
Цитата amel27:
call echo %~1: %%_%$b%%%
CMD/BAT - [решено] Поиск с условием и сравнение
У меня правильно получается только с сохранением в файл
call echo %~1: %%_%$b%%% >>my3.txt
А если просто писать
echo %~1: %%_%$b%%%
то отображается первое значение в таком виде %_0.1%
-
amel27
Re: CMD/BAT - [решено] Поиск с условием и сравнение
Цитата 63RW51:
как вот это вывести на экран
то же с паузой:
Код:
как вот это вывести на экран
CMD/BAT - [решено] Поиск с условием и сравнение
то же с паузой:
Код:
Код: Выделить всё
@echo off
call :TEST vasya
call :TEST petya
PAUSE>nul
EXIT/B
:TEST
for /f "tokens=1* delims==" %%a in ('findstr/bic:"%~1=" "my.txt"') do set "$b=%%b"
for /f "tokens=1* delims==" %%a in ('findstr/bic:"%$b%=" /c:"run=" /c:"end=" "my2.txt"') do set "_%%a=%%b"
if "%_run%" gtr "%$b%" echo %~1: Сумма меньше& GoTo :EOF
if "%_end%" lss "%$b%" echo %~1: Сумма больше& GoTo :EOF
call echo %~1: %%_%$b%%%
GoTo :EOF