如何在命令行中列出来自 ppa/source 的包?

Ubu*_*ser 50 command-line apt dpkg

我想从一个源中列出所有文件,比如命令行中的extras.ubuntu.com。那命令是什么?

dpkg --list 列出所有文件或仅列出文件名。

enz*_*tib 43

找到以/var/lib/apt/lists/结尾的相关文件Packages,执行如下命令:

# example for deb http://security.ubuntu.com/ubuntu natty-security multiverse
awk '$1 == "Package:" { print $2 }' /var/lib/apt/lists/security*multiverse*Packages
Run Code Online (Sandbox Code Playgroud)

顺便说一下,我的extras.ubuntu.com_ubuntu_dists_natty_main_binary-i386_Packages是空的。

编辑

您还可以解析apt-cache输出。此脚本列出了所有包含服务器和存储库信息的包:

#!/bin/bash

apt-cache policy $(dpkg -l | awk 'NR >= 6 { print $2 }') |
  awk '/^[^ ]/    { split($1, a, ":"); pkg = a[1] }
    nextline == 1 { nextline = 0; printf("%-40s %-50s %s\n", pkg, $2, $3) }
    /\*\*\*/      { nextline = 1 }'
Run Code Online (Sandbox Code Playgroud)

方便地对输出进行排序,您可以获得所需的信息。


Ada*_*tek 10

我只想直接在服务器端检查,就像这样:

$ curl -s http://extras.ubuntu.com/ubuntu/dists/maverick/main/binary-i386/Packages.gz |
  gzip -d | grep Package
Package: news
Package: suspended-sentence
Run Code Online (Sandbox Code Playgroud)