Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - [решено] Поиск с условием и сравнение

Ответить
Настройки темы
CMD/BAT - [решено] Поиск с условием и сравнение

Новый участник


Сообщения: 2
Благодарности: 0

Профиль | Отправить PM | Цитировать


Подскажите пожалуйста как реализовать:
Есть файл 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 и вывести его на экран

Отправлено: 13:11, 16-10-2010

 

Googler


Сообщения: 3665
Благодарности: 1563

Профиль | Отправить PM | Цитировать


Код: Выделить весь код
@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
Это сообщение посчитали полезным следующие участники:

Отправлено: 11:54, 18-10-2010 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Новый участник


Сообщения: 2
Благодарности: 0

Профиль | Отправить PM | Цитировать


Спасибо большое а подскажите пожалуйста еще как вот это вывести на экран:
Цитата amel27:
call echo %~1: %%_%$b%%% »
У меня правильно получается только с сохранением в файл
call echo %~1: %%_%$b%%% >>my3.txt

А если просто писать
echo %~1: %%_%$b%%%

то отображается первое значение в таком виде %_0.1%

Отправлено: 18:13, 18-10-2010 | #3


Googler


Сообщения: 3665
Благодарности: 1563

Профиль | Отправить PM | Цитировать


Цитата 63RW51:
как вот это вывести на экран »
то же с паузой:
Код: Выделить весь код
@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

Отправлено: 07:25, 19-10-2010 | #4



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - [решено] Поиск с условием и сравнение

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
CMD/BAT - Составить скрипт с условием Firebolt Скриптовые языки администрирования Windows 27 14-07-2011 23:59
CMD/BAT - [решено] Вопрос по поиску с условием. ajakzs Скриптовые языки администрирования Windows 6 15-10-2010 16:49
Прочие БД - [решено] запрос на выборку с условием Setser Программирование и базы данных 3 10-08-2010 20:33
V. 2007 - Антивирус и антиспам для exch 2007 с условием. Alexandrovav Microsoft Exchange Server 10 17-02-2010 12:03
запрос в MySQL из PHP с условием. что-то не так делаю koresaram Вебмастеру 7 09-08-2006 14:49




 
Переход