web-dev-qa-db-ja.com

Debianで利用可能な(つまり、アンインストールされた)パッケージのリストを取得するにはどうすればよいですか?

基本的に私が探しているのは、以下に相当するDebianです。

yum list available

利用可能なパッケージを表示します(現在インストールされていません)。これはリモートサーバー上にあるため、コンソールから実行できるものを使用します。ありがとう。

19
freakwincy

grep-dctrlおよびその派生物は、aptキャッシュファイルを照会するための優れた方法を提供します。 (これらのツールは、Sudo apt-get install dctrl-toolsを使用してUbuntuにインストールできます)

利用可能な(必ずしもインストールされている必要はない)パッケージの場合、grep-availableを使用できます。たとえば、利用可能なすべてのパッケージを一覧表示するには:

grep-available  -s Package .

編集:

aptitudeを起動するだけで、インストールされていないパッケージのリストを表示できます。

次のコマンドを使用して、aptitudeでインストールされていないパッケージのリストを取得することもできます。

aptitude -F "%p" search "?not(?installed)"

新しいマルチアーチパッケージを使用すると、この結果にリストされている他のアーキテクチャ用のパッケージを取得できることに注意してください。たとえば、私は得ます:

aptitude -F "%p" search "?not(?installed)"  | grep "^bash:"
bash:i386

私はbashパッケージをインストールしていますが、AMD64バージョンのUbuntu PreciseでOSがインストールされているため、これはAMD64バージョンです。これらのパッケージを他のアーキテクチャーで表示したくない場合は、:を含む行を除外できます。

aptitude -F "%p" search "?not(?installed)"  | grep -v ':'
7
ℝaphink

apt-cacheは、パッケージキャッシュのクエリに使用されます。

 apt-cache pkgnames |ソート
 apt-cache search 
 apt-cache search --names-only 
16
user1686

この目的のためにapt-cacheを使用します:

apt-cache search package

apt-cacheはシステムのパッケージキャッシュのみを使用するため、このキャッシュが最新であることを確認してください。

apt-get update

検索するファイルの名前がわかっている場合は、ユーティリティapt-fileを使用することもできます。ただし、これはシステムに追加する必要があります。例えば:

apt-file search somefilename

私は次のいずれかの方法でapt-cacheを使用する傾向があります。

apt-cache search package | sort | grep item

(これは、実際に要約または名前にitemが含まれているものを示しています。)

apt-cache search thing | sort | less

(これはthingを検索してから、lessで見やすいように並べ替えます。)

2
Mei

私の見解では、デフォルトでインストールされたコマンドを処理し、特別な理由がない限り、余分なパッケージを避けます。

私のDebianではGNU bashこれらの簡単なコマンドを

apt list
apt list --all-versions

何でもリストされます(インストールされているものとされていないもの)。次に、grep "installed"またはgrep -v "installed"を使用して結果を制限できます。また、1つ以上のパッケージ名と組み合わせることもできます(ワイルドマークを使用できます)。

スイッチ "-all-versions"は、各パッケージバージョン(安定版、テスト版、不安定版、実験版)の出力を個別の行で提供します。

単純な「aptリスト」では、1つの(最も優先度の高い)バージョンのみが提供されます。

2
George Vasiliou

質問を厳密に受けて(インストールされていないパッケージのリストを表示したい)、使用してみてください

(以下のコメントに従って編集)

# apt-get update
# dpkg -l '*' | egrep --invert-match '^i'

正確な構文はわかりませんが、これをWindowsボックスに書いているので、チェックする方法がありません。多分あなたがgrepするものを変更しようとする

0
PPC