вторник, 7 октября 2014 г.

[Из песочницы] Получаем информацию о программе и загружаем ее через CMD (man и apt-get для Windows?)

image

В данной статье речь пойдет об очень простом и удобном способе для получения данных (информации) о программным обеспечении и загрузки/установки через CMD. Для реализации было использовано открытый API Xetcom.Export и Wget1 . К сожалению, API толком не документирован, но, с другой стороны, достаточно простой — можно понять суть после нескольких тестовых запросов. Сама сборка состоит из трех не зависящих друг от друга .BAT файлов и пакета Wget. Вооружитесь правами администратора и вперед.



Для начало советую немного поиграть с настройками интерпретатора, а если по конкретнее — настроить вид окна (Свойства > Расположение). Ширину и высоту размера буфера обмена часто путают с размером окна. Если вкратце, то это фактический максимальный размер прокрутки. Если текст не совмещается в ней, то автоматический переносится на следующую строку. Именно по этой причине кнопка Maximize в командной строке «не работает». Оптимальные параметры на мой взгляд — 150x300. Высота 300 означает 300 строк, после которого ранее записи исчезают. О настройках более-менее описано тут. А еще, в качестве альтернативы советую попробовать Console.

image

Шрифт Lucida Console вместо точечных.


Состав SFX архива:




Все файлы архива распаковываются в папке %windir%. Это позволяет вызывать их напрямую — без указания пути и без регистрации пути в реестре. Последний вариант позволяет запускать программу независимо от расположения, но нужно о ее местонахождения сообщить реестру (ветка SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths). Точно так же работают системные утилиты calc, mspaint, ping и т. д. Здесь подробно описано.

А теперь обо всём по-порядку.


man.bat



@ECHO OFF
CHCP 1251
%1
%2
CLS
SET title=%1
SET param=%2

IF "%title%" == "" (
ECHO Значение не указано
EXIT /B
)

IF "%param%" == "" GOTO none
IF "%param%" == "-c" GOTO c
IF "%param%" == "-m" GOTO m
IF "%param%" == "-l" GOTO l
IF "%param%" == "-f" GOTO f
GOTO error

:none
wget --quiet "http://ift.tt/1vJzvgs" -O "%title%.txt"
TYPE "%title%.txt"
DEL "%title%.txt"
EXIT /B

:c
wget --quiet "http://ift.tt/10InYoa" -O "%title%.txt"
TYPE "%title%.txt"
DEL "%title%.txt"
EXIT /B

:m
wget --quiet "http://ift.tt/1vJzvgw" -O "%title%.txt"
TYPE "%title%.txt"
DEL "%title%.txt"
EXIT /B

:l
wget --quiet "http://ift.tt/10InYoh" -O "%title%.txt"
TYPE "%title%.txt"
DEL "%title%.txt"
EXIT /B

:f
wget --quiet "http://ift.tt/10InYoj" -O "%title%.txt"
TYPE "%title%.txt"
DEL "%title%.txt"
EXIT /B

:error
ECHO Указан неправильный параметр




Демонстрация / вывод информации aimpimage

Как вы заметили, у этого батника имеются параметры -c, -m, -l, -f (compact, medium, long, full соответственно). Если ввести команду без параметра, то вводится минимальная информация (описание программы + карточка + особенности). Каждый последующий параметр добавляет больше информации. Для наглядности см. примеры.


Примеры


Краткая информация Google Chrome

man google-chrome
Описание: Google Chrome — наиболее быстро развивающийся браузер, во многом, благодаря открытому исходному коду Chromium, благодаря которому оперативно выпускает новые версии и при этом, быстро ликвидирует все имеющиеся уязвимости. Обозреватель имеет простой минималистичный дизайн, что облегчает интернет-серфинг, так как ничто не отвлекает пользователя от содержимого веб-страницы. Вкладки браузера являются изолированными, что одновременно с повышением надёжности работы браузера, делает посещение сайтов более безопасным. Chrome имеет встроенный движок JavaScript, значительно ускоряющий обработку скриптов и увеличивающий скорость работы в Интернете.

Разработчик: Google

Поддерживаемые форматы: HTML,HTM,SHTML,XHTML,TXT,TEXT,JPE,JPG,JPEG,GIF,MHTML,PNG,BMP,ICO,SVG,SVGZ,XML,PDF,SWF

Оф. сайт: google.com

Платный аналог: e-Capsule Browser

Русский язык: Имеется

Статус: Freeware

Исходники: Закрыты


Особенности:

— Единственное окно для решения большинства задач.

— Ярлыки приложений и динамические вкладки.

— Возможность безопасного просмотра сомнительных сайтов, а также наличие режима "инкогнито".

— Лёгкий процесс создания закладок, а также возможность их импорта из других браузеров.

— Высокая скорость работы и надёжность.

— Полностью автоматический процесс обновления.






Полная информация Google Chrome

man google-chrome -f
Описание: Google Chrome — наиболее быстро развивающийся браузер, во многом, благодаря открытому исходному коду Chromium, благодаря которому оперативно выпускает новые версии и при этом, быстро ликвидирует все имеющиеся уязвимости. Обозреватель имеет простой минималистичный дизайн, что облегчает интернет-серфинг, так как ничто не отвлекает пользователя от содержимого веб-страницы. Вкладки браузера являются изолированными, что одновременно с повышением надёжности работы браузера, делает посещение сайтов более безопасным. Chrome имеет встроенный движок JavaScript, значительно ускоряющий обработку скриптов и увеличивающий скорость работы в Интернете.

Разработчик: Google

Поддерживаемые форматы: HTML,HTM,SHTML,XHTML,TXT,TEXT,JPE,JPG,JPEG,GIF,MHTML,PNG,BMP,ICO,SVG,SVGZ,XML,PDF,SWF

Оф. сайт: google.com

Платный аналог: e-Capsule Browser

Русский язык: Имеется

Статус: Freeware

Исходники: Закрыты


Особенности:

— Единственное окно для решения большинства задач.

— Ярлыки приложений и динамические вкладки.

— Возможность безопасного просмотра сомнительных сайтов, а также наличие режима "инкогнито".

— Лёгкий процесс создания закладок, а также возможность их импорта из других браузеров.

— Высокая скорость работы и надёжность.

— Полностью автоматический процесс обновления.


Системные требование:

Процессор: 2200 MHz

ОЗУ: 512 Мб

Жесткий диск: 100 Мб

Аудиокарта: Любая совместимая аудиокарта

Видеокарта: 64 Мб

Архитектура: x86 или x64

Система: Windows XP, Windows Vista, Windows 7, Windows 8


Индекс полезности:

Скорость: 100

Практичность: 100

Надежность: 100

Функциональность: 100


Информация о файле:

Тихая установка: /install

Варианты дистрибутива: Только установочная

Инсталлятор: Без тулбаров

Сертификат: Имеется


Конкуренты:

360-browser

safari

avant-browser

baidu-spark

blackhawk-browser

browzar

chrome-hybrid

chromium

cometbird-browser

comodo-dragon

comodo-icedragon

coolnovo

coowon

cyberfox

dooble

epic-browser

firefox

firefox-hybrid

greenbrowser

internet-explorer

k-meleon

lunascape-browser

maxthon-browser

opera

opera-hybrid

opera-unofficial

orbitum

orca-browser

pale-moon

qip-surf

qupzilla

seamonkey

sleipnir

slimbrowser

slimjet

srware-iron

superbird

theworld-browser

tor-browser-bundle

torch-browser

waterfox

wyzo

yandex-browser










get.bat

@echo off
chcp 1251
%1
%2
cls
set title=%1
set param=%2

IF "%param%" == "x64" GOTO x64

:x86
cd "%TMP%"
wget --quiet "http://ift.tt/10InYEx" -O "%title%-x86.txt"
wget -i "%title%-x86.txt" -P %USERPROFILE%\Desktop
del "%title%-x86.txt"
Exit /B

:x64
cd "%TMP%"
wget --quiet "http://ift.tt/10InYEz" -O "%title%-x64.txt"
wget -i "%title%-x64.txt" -P %USERPROFILE%\Desktop
del "%title%-x64.txt"
Exit /B




Принцип работы данного файла думаю, будет излишне описывать.

Демонстрация / загрузка aimp

image


Загруженный файл сохраняется на рабочем столе (проверено на Windows 7/8). Не смог найти переменную рабочего стола XP. Хотя здесь есть изощренное решение, но оно тоже почему-то не работает. Проблема в том, что в зависимости от языка путь меняется. Например в русской версии %HOMEPATH%\Рабочий стол, в английской %HOMEPATH%\Desktop и т. д. Чтобы не спамить batch файл многострочными IF-ами, решил отказаться от этой затеи. Пользователям XP придется немного поправить команды. %HOMEPATH% или папка пользователя, оттуда всего один шаг к рабочему столу. Замените %USERPROFILE%\Desktop на %HOMEPATH%\change_me и готово.


Автоматизированная поэтапная загрузка через другой bat файл:



cmd /c get 7-zip
cmd /c get opera
cmd /c get firefox








Установка «самоустанавливаемых» программ

Этот трюк требует еще один запрос к API — для получения ключа тихой установки (Unattended/Silent installation switch). Еще стоит обратить внимание, что не все программы поддерживают «тихий режим» установки или вообще изначально портативные (таких тоже очень много). В этом случае после загрузки скрипт просто запустит файл и будет ждать ваших действии.

install.bat



@echo off
chcp 1251
%1
%2
cls
set title=%1
set param=%2

IF "%param%" == "x64" GOTO x64

:x86

:: Получение данных
cd "%TMP%"
wget --quiet "http://ift.tt/10InYEx" -O "%title%-x86.txt"
wget -i "%title%-x86.txt" -P %TMP%
wget --quiet "http://ift.tt/1vJzvgC" -O "%title%-x86-silent.txt"

:: Получение названии и расширении файла
set /p x86=<"%title%-x86.txt"
for /F %%i in ("%x86%") do set x86=%%~nxi

:: Запуск инсталлятора
set /p silent=<"%title%-x86-silent.txt"
cmd /c "%TMP%\%x86% %silent%"

:: Удаление оставшихся файлов
del "%TMP%\%x86%"
del "%title%-x86.txt"
del "%title%-x86-silent.txt"
Exit /B


:x64

:: Получение данных
cd "%TMP%"
wget --quiet "http://ift.tt/10InYEz" -O "%title%-x64.txt"
wget -i "%title%-x64.txt" -P %TMP%
wget --quiet "http://ift.tt/1vJzvgC" -O "%title%-x64-silent.txt"

:: Получение названии и расширении файла
set /p x64=<"%title%-x64.txt"
for /F %%i in ("%x64%") do set x64=%%~nxi

:: Запуск инсталлятора
set /p silent=<"%title%-x64-silent.txt"
cmd /c "%TMP%\%x64% %silent%"

:: Удаление оставшихся файлов
del "%TMP%\%x86%"
del "%title%-x64.txt"
del "%title%-x64-silent.txt"
Exit /B




Демонстрация / автоматическая установка burnawareimage

Немножко автоматизации или пакетная установка, или Windows WPI размером 1кб



::==========================::
::=========settings=========::
::==========================::

:: Браузеры
cmd /c install firefox
cmd /c install google-chrome

:: Архиваторы
cmd /c install 7-zip

:: Аудио
cmd /c install foobar200

:: Конвертеры
cmd /c install format-factory

:: Видео
cmd /c install k-lite-codec-pack
cmd /c install audacity

:: Графика
cmd /c install faststone-image-viewer
cmd /c install picpick

:: Система
cmd /c install ultradefrag
cmd /c install hashtab

:: Нужные вещи
cmd /c install adobe-flash-player
cmd /c install microsoft-silverlight
cmd /c install java x64
cmd /c install unlocker

:: Офис
cmd /c install notepad-plus-plus
cmd /c install libreoffice




SFX архив

This entry passed through the Full-Text RSS service - if this is your content and you're reading it on someone else's site, please read the FAQ at http://ift.tt/jcXqJW.


Комментариев нет:

Отправить комментарий