%20disponibles%20desde%20ppa%20espec%C3%ADfico%20por%20l%C3%ADnea%20de%20comandos.png)
Quiero enumerar todos los paquetes Head disponibles en ppa específicos.
Ejemplo:webupd8 ppa:nilarimogard/webupd8
tiene los siguientes paquetes principales para Trusty:
¿Puedo enumerarlos por línea de comando??
Respuesta1
Escribí una función que toma la lista de paquetes para el repositorio que se usaría en la versión/arquitectura actual. Es bastante simple y podría escribirse en una sola línea... Sería simplemente una línea muy difícil de manejar.
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")
}
Entonces, después de pegar eso en una terminal, puede llamarlo como lsppa ppa:nilarimogard/webupd8
y devolverá una lista ordenada por la lista de paquetes.
En este caso, podría no ser alfabético e incluso podría contener duplicados (versiones diferentes), por lo que podría (puede pasarlo sort -u
si desea llamar):
lsppa ppa:nilarimogard/webupd8 | sort -u | less