コマンドラインで特定のPPAから利用可能なパッケージを一覧表示します。

コマンドラインで特定のPPAから利用可能なパッケージを一覧表示します。

特定の PPA から利用可能なすべての Head パッケージを一覧表示します。

例:ウェブアップ8 ppa:nilarimogard/webupd8Trusty には次のヘッド パッケージがあります。

画面

コマンドラインでリストできますか?

答え1

現在のリリース/アーキテクチャで使用されるリポジトリのパッケージ リストを取得する関数を作成しました。これは非常にシンプルで、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

関連情報