LINUX.ORG.RU

Посмотреть на packages.debian.org?

AITap ★★★★★
()

Чаще всего,

<program-name> -v

ну или искать в man ключ.

Буду рад услышать от ылиты более Ъ-методы. Подписался.

observer ★★★
()
Ответ на: комментарий от observer

дело в том, что у тс не debian

int13h ★★★★★
() автор топика
Ответ на: комментарий от int13h

Думаю, если только

wget http://packages.debian.org/search?keywords=package&searchon=names&suite=all&section=all
где package - имя пакета, и потом прочитать полученный файл чем угодно.

NorokKrin
()
Ответ на: комментарий от minakov

Точнее проcurlить. Я даже однострочник наваял на коленке:

curl http://mirror.yandex.ru/debian/pool/main/c/coreutils/ |grep coreutils|sed -e "s/<.*\">//g;s/<\/.*$//g"

minakov ★★★★★
()
Ответ на: комментарий от int13h

потому что пиво дороже выходит при таком же количестве эффекта, а коньяк мне жинка запретила временно. Да, а вообще я против вина и за коньяк

minakov ★★★★★
()
Последнее исправление: minakov (всего исправлений: 1)
Ответ на: комментарий от int13h

Я думаю в этом твоя и проблема, что у тебя не debian.
А по теме думаю или packages качать, либо на packages.debian.org смотреть. Надо учитывать, что несколько веток (stable, testing, sid, experimental, backports) и то что пакет может немного называться по-другому в отличие от твоего дистра.

Deleted
()
Ответ на: комментарий от int13h

и не дебиан, и не сходить в интернет? Тогда только через libastral.

leave ★★★★★
()
Ответ на: комментарий от int13h

без Windows

А это здесь причем? В любом случае без интернета никак не узнать. Зачем тогда эти извращения - «без браузера» не понимаю. Правильный ответ прозвучал еще в первом комментарии, а способы как оттуда извлечь информацию уже зависит от фантазии.

Nokman
()

Давай переформулируем вопрос. Как хоть в каком-нибудь дистрибутиве узнать версию программы без пакетного менеджера и без браузера?

shell-script ★★★★★
()
Ответ на: комментарий от minakov

Дубль два показывает версии исходников со странички(поправьте регекспы, мне лень):

#!/bin/bash
# search.sh version 0.01
site="http://packages.debian.org/"
repo1="squeeze"
repo2="wheezy"
repo3="sid"
echo "squeeze:"
curl -s $site$repo1\/$1 |grep "tar.gz" |sed -e 's/<.*\">//g;s/<\/.*$//g'
echo "Wheezy:"
curl -s $site$repo2\/$1 |grep "tar.gz" |sed -e 's/<.*\">//g;s/<\/.*$//g'
echo "sid:"
curl -s $site$repo3\/$1 |grep "tar.gz" |sed -e 's/<.*\">//g;s/<\/.*$//g'
[elemashine@laptop ~]$ sh search.sh coreutils
squeeze:
    [coreutils_8.5.orig.tar.gz]
Wheezy:
    [coreutils_8.13.orig.tar.gz]
sid:
    [coreutils_8.20.orig.tar.gz]

minakov ★★★★★
()
Последнее исправление: minakov (всего исправлений: 1)
Ответ на: комментарий от minakov

В том-то и дело, что зная название пакета дёрнуть версию нетрудно. Тут ты всё правильно делаешь.

Но ведь в условии стоит «узнать версию программы». Т.е. пакет неизвестен. Вот я и пытаюсь узнать у ТС, как он без пакетного менеджера будет искать версию программы в консоли для любого дистра.

shell-script ★★★★★
()
Ответ на: комментарий от shell-script

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

minakov ★★★★★
()
Ответ на: комментарий от minakov

Зачем знать версию программы в разных дистрах как раз вопрос простой. Мало ли там, статистику собрать захотелось. Или автоматическое сравнение дистрибутивов какое.

А вот как раз, зачем знать версию пакета из одного дистра в другом, мне придумать сложнее. Вот, к примеру, хочу я определить, какая версия у апача в дебиане из-под генты. У меня это пакет www-servers/apache, а в дебиане это - apache2. И, без браузера(читай, не зная, как пакет называется) придётся либо писать бота, который пройдётся по packages.debian.org, либо писать аналог дебиановской apt-file, выхлоп которой парсить и скармливать скрипту наподобие твоего. Или с самого начала составлять базу соответствий утилит и пакетов, в которых они лежат.

shell-script ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.