![]() |
Внимание, важное сообщение: Дорогие Друзья!
В ноябре далекого 2001 года мы решили создать сайт и форум, которые смогут помочь как начинающим, так и продвинутым пользователям разобраться в операционных системах. В 2004-2006г наш проект был одним из самых крупных ИТ ресурсов в рунете, на пике нас посещало более 300 000 человек в день! Наша документация по службам Windows и автоматической установке помогла огромному количеству пользователей и сисадминов. Мы с уверенностью можем сказать, что внесли большой вклад в развитие ИТ сообщества рунета. Но... время меняются, приоритеты тоже. И, к сожалению, пришло время сказать До встречи! После долгих дискуссий было принято решение закрыть наш проект. 1 августа форум переводится в режим Только чтение, а в начале сентября мы переведем рубильник в положение Выключен Огромное спасибо за эти 24 года, это было незабываемое приключение. Сказать спасибо и поделиться своей историей можно в данной теме. С уважением, ваш призрачный админ, BigMac... |
|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - [решено] проверка версии и скачивание более нового апдейта |
|
CMD/BAT - [решено] проверка версии и скачивание более нового апдейта
|
Новый участник Сообщения: 3 |
есть сетевая папка update там находяться самораспаковывающиеся архивы:
update1.0.1, update1.0.2, update1.0.3, update1.0.4. есть программа, в корневом каталоге проги папка version, там файл version.inf содержание которого всего одна строка Version=1.0.2 содержимое которой будет меняться взависимости какой патч установлен. подскажите как реализовать скачивание только архива который выше версией указаной в version.inf. т.е. update1.0.3, затем если нет архива выше версии то вывести сообщение что обновлений нет. |
|
Отправлено: 07:06, 24-01-2011 |
Googler Сообщения: 3665
|
Профиль | Отправить PM | Цитировать как-то так:
@echo off SETLOCAL EnableDelayedExpansion set "MyProgPath=c:\Program Files\My Program" set "RemotePath=\\MyServer\Share" for /f "usebackq tokens=2-4 delims==. " %%a in ("%MyProgPath%\version.inf") do ( set "$b=0%%b"& set "$c=0%%c"& set "$v=%%a!$b:~-2!!$c:~-2!" ) for /f "tokens=1-3 delims=update." %%a in ('dir /b/a-d "%RemotePath%\update*.exe"') do ( set "$b=0%%b"& set "$c=0%%c"& set "$n=%%a!$b:~-2!!$c:~-2!" if !$n! gtr !$v! copy /b/y/v/z "%RemotePath%\update%%a.%%b.%%c.exe" "%MyProgPath%\" ) |
Отправлено: 12:46, 24-01-2011 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Новый участник Сообщения: 3
|
Профиль | Отправить PM | Цитировать Спасибо! работает, но скачивает все файлы выше версией, а хотелось бы реализовать так чтобы только один файл который выше версией.
т.е. версия проги 1.0.2 , и надо скачать файл update1.0.3 если не трудно подскажите что подправить в коде надо. заранее благодарю! |
Отправлено: 18:09, 24-01-2011 | #3 |
Googler Сообщения: 3665
|
Профиль | Отправить PM | Цитировать Цитата hant:
@echo off SETLOCAL EnableDelayedExpansion set "MyProgPath=c:\Program Files\My Program" set "RemotePath=\\MyServer\Share" for /f "usebackq tokens=2-4 delims==. " %%a in ("%MyProgPath%\version.inf") do ( set "$b=0%%b"& set "$c=0%%c"& set "$v=%%a!$b:~-2!!$c:~-2!" )& set "$m=999999"& set "$f=" for /f "tokens=1-3 delims=update." %%a in ('dir /b/a-d "%RemotePath%\update*.exe"') do ( set "$b=0%%b"& set "$c=0%%c"& set "$n=%%a!$b:~-2!!$c:~-2!" if !$n! gtr !$v! if !$n! lss !$m! set "$m=!$n!"& set "$f=update%%a.%%b.%%c.exe" ) if defined $f copy /b/y/v/z "%RemotePath%\!$f!" "%MyProgPath%\" |
|
Отправлено: 06:54, 25-01-2011 | #4 |
Новый участник Сообщения: 3
|
Профиль | Отправить PM | Цитировать Огромное спасибо!!! весьма признателен Вам за Вашу помошь!
Все работает! |
|
Отправлено: 11:42, 25-01-2011 | #5 |
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
CD и DVD - Nero 7 и более ранние версии | Fel | Программное обеспечение Windows | 516 | 23-02-2021 12:05 | |
Интернет - Opera .:[ архив ]:. | Djoni | Программное обеспечение Windows | 1609 | 30-07-2011 14:30 | |
Система - VMware .:[ архив ]:. | kraiten | Программное обеспечение Windows | 186 | 18-08-2010 09:34 | |
Безопасность - Norton AntiVirus 2005 и более ранние версии | SLAWA | Защита компьютерных систем | 72 | 23-01-2006 06:30 | |
Интернет - Internet Explorer 5 и более ранние версии | Roman Go | Программное обеспечение Windows | 15 | 19-09-2004 00:32 |
|