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

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

Ответить
Настройки темы
CMD/BAT - [решено] скрипт должен лезть в папку vers и искать там фалы

Пользователь


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

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


Сам скрипт будет частью одного бат файла , скрипт должен лезть в папку vers и искать там фалы вот с такими названиями 1.0.0 1.6.1 1.0.3 3.0.1 5.0.4 в общем их там много расширение они как такого не имеют , это как бы версии и скрипт обязан выводить небольшое число Вот так :

Код: Выделить весь код
Echo Версия %version%
P. S. с русской кодировкой нет проблем

HeLp PlEaSe

Отправлено: 02:08, 22-07-2012

 

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


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

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


Предлагаю такой вариант, но он ищет только 1 файл.
Код: Выделить весь код
@echo off
cd vers
if exist 1.0.0 goto 1.0.0
if exist 1.6.1 goto 1.6.1
//И так далее
goto errvers //На случай если нет совпадений
:1.0.0
@echo Версия: 1.0.0
pause >nul
goto end
:1.6.1
@echo Версия: 1.6.1
pause >nul
goto end
:errvers
@echo Ошибка определения версии!
pause >nul
:end

Отправлено: 03:47, 18-08-2012 | #2



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

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


Ветеран


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

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


Цитата vlad_exe@vk:
расширение они как такого не имеют »
Всё, что после последней точки — это и есть расширение.

Что Вам нужно — не понятно.
Это сообщение посчитали полезным следующие участники:

Отправлено: 08:07, 18-08-2012 | #3


Пользователь


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

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


Я знаю про ето Iska обясню у меня есть игра и я хочу чтобы она обновлялась через сеть в случаи если выходит новая версия я это розработал на быдло коде выглядит так :



Код: Выделить весь код

Set mod=ExE-MODs

if exist settings\version\1.0.0 (
color %col1%
echo. У вас есть обновление 1.0.0
)
)



if not exist settings\version\1.0.0 (
if exist \\-ex-\ExServ\%mod%\version\1.0.0 (
color %col2%
echo.Есть новая версия игры 1.0.0
xcopy \\-ex-\ExServ\%mod%\available\1.0.0 /S /C /H /R /K /Y /Z
copy \\-ex-\ExServ\%mod%\version\1.0.0 settings\version\1.0.0
)
)

И много копий такого скрипта для каждой версии ((((( Как вы поняли ето турпо и занимает много времени на прогон скрипта и имеется граница версий поскольку мне хватило терпения только 1.6.7 версии . Как ето всё упростить ???? вот в чом вопрос ???

Последний раз редактировалось vlad_exe@vk, 27-10-2012 в 23:56.


Отправлено: 23:47, 27-10-2012 | #4


Ветеран


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

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


Из письма в ПМ:
Цитата vlad_exe@vk:
http://forum.oszone.net/thread-239051.html Помоги в старой теме Плиз .
Цитата vlad_exe@vk:
у меня есть игра »
Я рад за Вас. Название её, ссылка на сайт разработчика, ссылка на загрузку, равно как и ссылка на загрузку обновлений, очевидно, зело великая тайна есть.

1. Повторюсь:
Цитата Iska:
Что Вам нужно — не понятно. »
2. Наплевательское отношение к знакам грамматике, орфографии и синтаксису вызывает у меня, как правило, аналогичное отношение к потребностям писавшего.

Отправлено: 00:08, 28-10-2012 | #5


Пользователь


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

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


Прошу прощения за грамматику ибо я с Украины , а Руский в школе нам приподавали только один год , сам того незнаю почему .

Игра тут не имеет значения это хотя это СS 1.6 ето сборка для людей в моей ланке .

Это типа скрипт для апдейта любой игры,проги

Работает так :
Код: Выделить весь код
И так в папке с игрой находится сам батник который после проверки на обновления щапустит саму игру через старт .
Сам скрипт :
Заходит в сетевую папку моего компа \\-ex-\ExServ\ExE-MODs\version\
И если там есть файл допустим 1.2.4
Ищет его анолог в папке с игрой сstrike\settings\version\
N если он там есть то продолжает роботу в поисках 1.2.5 ; 1.2.6;1.2.7;1.2.8 и т.д.
А если есть то xcopy \\-ex-\ExServ\ExE-MODs\aval\1.2.4  /S /C /H /R /K /Y /Z

aval папка с обновлениями

Вот так примерно оно рботает сейчас (((
Но ето как вы поняли - ну и все погрешности я написал выше .

Как упростить и не делать много етого тупого скрипта.
П.С. Еще раз прошу прощения за bad Russian .

Или искать версии в игре в сетевой папке в txt документе

Чтобы оно выглядили так :

Код: Выделить весь код
1.2.3
1.2.4
1.2.5
1.2.6

Отправлено: 01:56, 28-10-2012 | #6


Ветеран


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

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


Цитата vlad_exe@vk:
Прошу прощения за грамматику ибо я с Украины , а Руский в школе нам приподавали только один год , сам того незнаю почему . »
Ну, родной-то язык Вам явно преподавали больше, нежели, чем один год: запятые учили расставлять?


vlad_exe@vk, я вряд ли смогу Вам чем-либо помочь, поскольку не понимаю, что нужно сделать. Сожалею.

Отправлено: 04:03, 28-10-2012 | #7


Ветеран


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

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


Насколько я понял:
1. создай список версий на сервере DIR .... > vlist.txt
2. Для каждой записи из списка версий проверяй что есть файл на клиентском компьютере
For /f %%a .... (vlist.txt) do ..... (
If /I not exist %%a (xcopy ....)
)
вместо ... нужно подставить правильные пути и параметры.

-------
Я не развожу политику в подписи
ПТН ПНХ


Отправлено: 13:42, 28-10-2012 | #8


Пользователь


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

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


Vserd, Хммм теперь уже я не понял можно поподробней ?? ))))

Отправлено: 16:15, 28-10-2012 | #9


Ветеран


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

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


1. создаем список версий на сервере, пишем его в файл.
Либо отдельным скриптом и его ведет владелец сервера
Либо если это шара, можно попробовать использовать команду dir (возможно потребуется мапинг на диск (net use) в нашем батнике.

2. вычитываем содержимое файла версий из п.1 посточно, смотрим что есть такой файл с именем которыйчитали из файла (For /f %%a .... (vlist.txt) do ), нет такого файла (If /I not exist %%a), запускаем копирование (xcopy ).

расписывать что конкретно должно быть, мне не хочется слишком много работы, и условия задачи мне непонятны. Подсказать как преодолеть затык с удовольствием.

Для начала, воспользуйся cmd /k help dir
cmd /k help for
cmd /k help if
cmd /k help set

читать вдумчиво.

P.S. в какой-то из тем по Bat\cmd либо на этом форуме, либо на ру-борде решали подобную задачу. Можешь поискать, но помне лучше научиться самому.

-------
Я не развожу политику в подписи
ПТН ПНХ


Отправлено: 23:44, 28-10-2012 | #10



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

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

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
2008 R2 - Отучаем принт-сервер лезть куда не нужно ipconfiglol Windows Server 2008/2008 R2 9 19-07-2012 20:00
Скрипт поиска и копирования файлов в папку. Как реализовать? Pozia AutoIt 5 31-03-2012 18:47
CMD/BAT - [решено] Как переделать скрипт, чтобы можно было указать папку источник и назначение ? dark-------13 Скриптовые языки администрирования Windows 0 19-03-2012 19:44
VBS/WSH/JS - [решено] скрипт ищущий в системе папку Valve и удаляющий её T3D Скриптовые языки администрирования Windows 12 18-01-2011 17:58
CMD/BAT - [решено] Не удалять фалы по маске SanyaJoker Скриптовые языки администрирования Windows 4 26-10-2010 13:37




 
Переход