Список (главных) пакетов, доступных из определенного ppa с помощью командной строки

Список (главных) пакетов, доступных из определенного ppa с помощью командной строки

Я хочу перечислить все пакеты Head, доступные из определенного PPA.

Пример:webupd8 ppa:nilarimogard/webupd8имеет следующие пакеты голов для trusty:

экран

Могу ли я получить их список с помощью командной строки??

решение1

Я написал функцию, которая берет список пакетов для репозитория, который будет использоваться в текущем релизе/архитектуре. Она довольно проста и может быть написана в одну строку... Это была бы просто очень громоздкая строка.

function lsppa {
    # expects one argument in the form of ppa:nilarimogard/webupd8

    USAGE="lsppa <ppa:user/ppaname>"

    if [[ "$#" != "1" || ! "$1"  == *"ppa"* ]]; then
      echo "$USAGE"
      return
    fi

    REPO="${1/ppa:/}"
    CODE="$(lsb_release -cs)"
    ARCH="$(dpkg --print-architecture)"
    URL="http://ppa.launchpad.net/$REPO/ubuntu/dists/$CODE/main/binary-$ARCH/Packages"

    awk '/^Package:/ {print $2}' <(wget -qO- "$URL")
}

Итак, после того, как вы вставите это в терминал, вы можете вызвать его как, lsppa ppa:nilarimogard/webupd8и он вернет список, упорядоченный по списку пакетов.

В этом случае он может быть неалфавитным и даже содержать дубликаты (разные версии), поэтому вы можете (вы можете передать его, sort -uесли хотите вызвать:

lsppa ppa:nilarimogard/webupd8 | sort -u | less

Связанный контент