Автомат. замена локал. файлов новыми из архива в сети

Обсуждение вопросов автоматизации Total Commander с помощью сторонних программ и скриптовых технологий.

Модераторы: Avada, CaptainFlint, Nik, d-view, Моторокер

Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

Mellomann
В зависимости от используемой утилиты и расположения/доступа самого файла. Тут конкретика нужна.

А вообще (окромя обновления ТС) ветку ты явно не там создал. Тебе сюда (там же и ознакомишься с примерами).
Аватара пользователя
Mellomann
Сообщения: 709
Зарегистрирован: Пн сен 07, 2009 00:44

Сообщение Mellomann »

Flasher
ну чё, автоматизация обновлений - чего ж тут "не-того-раздельного"?

За ссыль пасиб - поизучаю...
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

Mellomann писал(а):ну чё, автоматизация обновлений - чего ж тут "не-того-раздельного"?
Обновлений чего? Если программ из сборки, то тогда тебе точно к НАЗАРЕТ-у. "не-того-раздельного" - не понял..
Аватара пользователя
Mellomann
Сообщения: 709
Зарегистрирован: Пн сен 07, 2009 00:44

Сообщение Mellomann »

Flasher писал(а):Обновлений чего? Если программ из сборки
И этого тоже.
Flasher писал(а):тебе точно к НАЗАРЕТ-у
А это, пардон, где?
Гугл - молчит в тряпочку.
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

Mellomann писал(а):А это, пардон, где?
Во втором посте писал. Это автор PowerUser. Своих единомышленников надо бы знать в "лицо". :wink:
И надо набирать не просто "НАЗАРЕТ", а "Назарет тотал/total". Вроде не первый день в сети..
Аватара пользователя
Mellomann
Сообщения: 709
Зарегистрирован: Пн сен 07, 2009 00:44

Сообщение Mellomann »

Flasher
Ок, гляну...
Аватара пользователя
Mellomann
Сообщения: 709
Зарегистрирован: Пн сен 07, 2009 00:44

Сообщение Mellomann »

То ли я пропустил, то ли действительно такого там не видать...

Упрощаю изначальное ТЗ и конкретизирую на самом простом из его вариантов:
Имеем сетевой файл http://software.zeniko.ch/sumatrapdf/SumatraPDF-dev.exe
Имеем локальный файл %COMMANDER_PATH%\Plugins\wlx\SLister\SumatraPDF.exe
Задача: обновить локальный файл при помощи ТОЛЬКО батника без доп.диалогов и прочего (нужно для возможности тихой замены).

Есть идеи?
Аватара пользователя
Tol!k
Сообщения: 1727
Зарегистрирован: Вт апр 01, 2008 20:02
Откуда: Арзамас

Сообщение Tol!k »

На чистом бате невозможно.
Выбирайте стороннюю утилиту или скрипт.
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

Mellomann
Скачивать батником можно только с FTP с паролем или анонимом, если разрешено.
Аватара пользователя
Mellomann
Сообщения: 709
Зарегистрирован: Пн сен 07, 2009 00:44

Сообщение Mellomann »

Tol!k
Ну из "сторонних" можно использовать любую системную софтинку (в т.ч. IE). Главное условие - работа всегда и везде, даже на голой системе.

Если вдруг такой вариант не проходит по причине отсутсвия нужных функуций, можно опробовать обходной путь - небольшую консольную утильку, которая скачает желаемый файл в нужное место (в т.ч. и по-тихому) при использовании синтаксиса типа такого:
[прога] -[сетевой путь] -[локальный путь] -[ключ тихой загрузки].
Аватара пользователя
Tol!k
Сообщения: 1727
Зарегистрирован: Вт апр 01, 2008 20:02
Откуда: Арзамас

Сообщение Tol!k »

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

set "from=http://software.zeniko.ch/sumatrapdf/SumatraPDF-dev.exe"
set "to=%COMMANDER_PATH%\Plugins\wlx\SLister\SumatraPDF.exe"

md "%to%\.." 2>nul
"%~dp0\curl.exe" "%from%" -o "%to%"
http://www.paehl.com/open_source/?CURL_7.27.0 (224КБ байт в UPX'e)
Аватара пользователя
Mellomann
Сообщения: 709
Зарегистрирован: Пн сен 07, 2009 00:44

Сообщение Mellomann »

Tol!k
Спасибо! Самое оно!
Правда, покамест развернул до такого вида:
@if exist "%COMMANDER_PATH%\Plugins\wlx\SLister\SumatraPDF.exe.bak" del "%COMMANDER_PATH%\Plugins\wlx\SLister\SumatraPDF.exe.bak" /f/q/s
@cls
@if exist "%COMMANDER_PATH%\Plugins\wlx\SLister\SumatraPDF.exe" rename "%COMMANDER_PATH%\Plugins\wlx\SLister\SumatraPDF.exe" "SumatraPDF-dev.exe.bak"
@call curl64.exe "http://software.zeniko.ch/sumatrapdf/SumatraPDF-dev.exe" -o "%COMMANDER_PATH%\Plugins\wlx\SLister\SumatraPDF.exe"
@if exist "%COMMANDER_PATH%\Plugins\wlx\SLister\SumatraPDF.exe" @echo Обновление SumatraPDF выполнено успешно!
@pause
Аватара пользователя
Mellomann
Сообщения: 709
Зарегистрирован: Пн сен 07, 2009 00:44

Сообщение Mellomann »

Немного не по основному вопросу, но по той же теме.

Решил проблему создания нужных мне файлов проще (в том виде, как и изначально задумывал) - слил в один файл картинку+архив и выбросил это на фотохостинг (естессно, ссыль даётся прямая на мой архив и бессрочная), а потом распаковываю любым имеющимся архиватором... И никакой миме не нужен. Хотя, с ним можно было бы отказаться от этой затеи и просто генерить нужный файл из батника.
Его качаем CURLом, который хорошо подходит для этого.

Выглядит моё безобразие (например, здесь - автоматическая обновлялка uTorrent) так:
Updater_uTorrent.cmd писал(а):@cd %temp%
@color 0E
@cls
@echo Обновление uTorrent.

@if exist "%COMMANDER_PATH%" @goto UPDSTART
@if not exist "%COMMANDER_PATH%" @color 0C & @echo ОШИБКА! Это нужно запускать из Total Commander, а не из проводника!
@if not exist "%COMMANDER_PATH%" @goto UPDEND

:UPDSTART

@if not exist "%ProgramW6432%" @set dlbrz=C:\Program Files
@if exist "%ProgramW6432%" @set dlbrz=C:\Program Files (x86)

@if exist "%temp%\_uTrUF" rd "%temp%\_uTrUF" /q/s
@call "%COMMANDER_PATH%\Programs\CURL\curl.exe" "http://ll.download3.utorrent.com/3.2.1/uTorrent.exe" -o "%temp%\_uTrUF\uTorrent.exe"
@call "%COMMANDER_PATH%\Programs\CURL\curl.exe" "http://2.firepic.org/2/images/2012-10/0 ... ivjncr.jpg" -o "%temp%\_uTrUF\config.7z"

@if exist "%dlbrz%\uTorrent\uTorrent.exe.backup" @del "%dlbrz%\uTorrent\uTorrent.exe.backup" /f/q/s
@if exist "%dlbrz%\uTorrent\uTorrent.exe" @rename "%dlbrz%\uTorrent\uTorrent.exe" "uTorrent.exe.backup"
@if exist "%temp%\_uTrUF\uTorrent.exe" copy "%temp%\_uTrUF\uTorrent.exe" "%dlbrz%\uTorrent\uTorrent.exe"
@if exist "%temp%\_uTrUF\uTorrent.exe" @del "%temp%\_uTrUF\uTorrent.exe" /f/q/s

@call "%COMMANDER_PATH%\Plugins\wcx\Total7zip\7z-x32\7z.exe" e "%temp%\_uTrUF\config.7z" -o"%temp%\_uTrUF"
@if not exist "%APPDATA%\uTorrent" md "%APPDATA%\uTorrent"
@if exist "%APPDATA%\uTorrent\settings.dat" @rename "%APPDATA%\uTorrent\settings.dat" "settings.dat.backup%random%%random%"
@copy "%temp%\_uTrUF\settings.dat" "%APPDATA%\uTorrent\settings.dat"
@if exist "%temp%\_uTrUF\settings.dat" @del "%temp%\_uTrUF\settings.dat" /f/q/s

@if exist "%temp%\_uTrUF" rd "%temp%\_uTrUF" /q/s

@if exist "%dlbrz%\uTorrent\uTorrent.exe" @echo Процесс окончен.
@if not exist "%dlbrz%\uTorrent\uTorrent.exe" @echo Произошла ошибка.
@color 0A
@pause

:UPDEND
@pause
Делюсь, вдруг кому понадобится.
По аналогии можно и кучу другого софта делать, собирая, по сути, некое подобие чистого и простого веб-установщика.
Последний раз редактировалось Mellomann Вс окт 07, 2012 18:34, всего редактировалось 2 раза.
Аватара пользователя
Avada
Сообщения: 10541
Зарегистрирован: Пт авг 01, 2008 16:17
Откуда: Россия, Саратов

Сообщение Avada »

Mellomann
Совсем не по основному вопросу и явно по другой теме. Куда и переносится.
Даже самая богатая фантазия
Не представит себе наши безобразия.
Ответить