回答:
apt-cache search <package name>
コマンドを実行すると、ローカルマシンに格納されている利用可能なパッケージの情報に対してクエリが実行されます。これは、「サブスクライブされた」リポジトリからのキャッシュです。つまり、コマンドはUSC(Ubuntu Software Center)またはSynapticで設定したリポジトリに対してクエリを実行しています。
apt-cache
マニュアルページによれば、/etc/apt/sources.list
はクエリで情報を取得する場所です。他のタイプのパッケージ情報のための追加の場所がいくつかあります。詳細についてはman apt-cache
、を参照してください。
基本的に、実行apt-cache search git
すると、パッケージ名とパッケージの説明に「git」という単語シーケンスを含む使用可能なパッケージのすべてのインスタンスが返されます。
たとえば、これは、その説明に「di git al」という単語のような「git」という単語シーケンスが含まれている可能性があるパッケージも結果として返されることを意味します。前の文の太字に注意してください。
特にgit(ソースコントロールマネージャー)に関連するパッケージのみに関心がある場合は、検索結果をより制限するために、クエリを正規表現の使用に制限する必要があります。
例えば:
sudo apt-cache search ^git$
パッケージ名に "git"という語句のみを明示的に含む結果を返します。
例えば:
sudo apt-cache search ^git$
git - fast, scalable, distributed revision control system
コマンド:
sudo apt-cache search ^git
「git」というフレーズで始まるパッケージの結果を返します。
例えば:
sudo apt-cache search ^git
git - fast, scalable, distributed revision control system
git-core - fast, scalable, distributed revision control system (obsolete)
git-doc - fast, scalable, distributed revision control system (documentation)
git-man - fast, scalable, distributed revision control system (manual pages)
gitk - fast, scalable, distributed revision control system (revision tree visualizer)
easygit - git for mere mortals
gforge-plugin-scmgit - Git plugin for FusionForge (transitional package)
git-all - fast, scalable, distributed revision control system (all subpackages)
git-annex - manage files with git, without checking their contents into git
git-arch - fast, scalable, distributed revision control system (arch interoperability)
...
とはいえ、パッケージキャッシュのクエリを調整して、目的に合わせて具体的にする必要があります。お役に立てれば。
^
手段パッケージと説明を始めますgit
。さて、2番目の出力は理解されました。それで何が^git$
戻るのですか?git
and ... で始まるパッケージ
apt-cache search ^git$
具体的には、gitパッケージを返します。apt-cache search ^git
「git」という語句で始まり、それほど限定的ではないパッケージを返します。
apt-cache search ^git | grep --color git
これはあなたの質問への間接的な回答ですが、パッケージ管理に関するものであるため、依然として関連しています。個人的にはapt-getではなくaptitudeを使用しています。aptitudeは、端末と同等のシナプスです。
検索する、
sudo aptitude search $keyword
その他のコマンド
sudo aptitude install
sudo aptitude update
sudo aptitude upgrade
aptitudeをインストールするには、
sudo apt-get install aptitude
aptitude why
、「クエリに使用する」と言ったように、ページがかなり古いだけです(2012年2月8日編集)。そのため、私の警告はまだ残っています。
apt-cache search ^git$
は、パッケージ名に" git "を含む結果のみを返します。たとえば、git-man
(あなたが投稿した2番目の出力から)も含まれてgit
いるため、これは理解できません。キャレットと$記号の意味を説明できますか?キャレットが「で始まる」を意味することは知っていますが、投稿した2番目の出力(=を^git
返すため)と矛盾しますeasygit
。