aptitudeでワイルドカードを使用する方法は?


22

aptitude次のようなワイルドカードを使用する方法はありますか?

sudo apt-get remove openoffice*.*

回答:


16

http://ubuntuforums.org/showthread.php?t=228309は、などのコンストラクトを介して可能であることを示し~n<package name>、これはユーザーマニュアルhttp://algebraicthunk.net/~dburrows/projects/aptitude/doc/en/で確認されていますch02s03s02.html

~nin ~n<package name>は、一致するパッケージ名の検索パターンです。パッケージ名以外のフィールドを照合することもできます。http://algebraicthunk.net/~dburrows/projects/aptitude/doc/en/ch02s03s05.html#tableSearchTermQuickGuideを参照してください

以下に例を示します。aptitude名前に「redshift」を含むすべてのパッケージを表示するとし、次に発行します

aptitude show ~nredshift

また、インストールや削除など、他のaptitudeオプションと組み合わせ可能である必要があります。たとえば、発行した名前のopenofficeでインストール済みのパッケージをすべて削除する場合

sudo aptitude -P remove ~nopenoffice

-Pパッケージをダウンロード、インストール、または削除する前に、検索パターンを使用してaptitudeにプロンプ​​トを強制的に表示するときにオプションを使用してください(検索パターンには多くの一致がある場合があり、アクションを実行する前にプロンプ​​トが表示されます)。

私が解決していないことの1つは、ワイルドカードの正確な機能を取得する方法です。たとえば、「openoffice」で始まるopenoffice*すべての文字列に一致します(「openoffice」を含む文字列に一致します)。たとえば、名前に特定の文字列が含まれるインストール済みパッケージを検索し、名前にaptitudeをフィードするなどの回避策が考えられます。~nopenoffice


-Pは、決してシンボリックリンクを
たどら

また、〜nredshiftを使用してもredshiftは検索されませんが、〜nredshiftは検索されます。また、
〜nは

NorticUsの回答は一部正しいです。ここでの正しい構文は
〜n

5

引用符で囲むだけです:

sudo apt-get remove "openoffice*"

そうしないと、シェルはこれを現在の作業ディレクトリのファイルに一致させようとします。


5
問題は、についてでaptitudeあり、ではありませんapt-get。このソリューションはaptitudeでは機能しません。
NN

@MichałŠrajer:単一引用符と二重引用符の両方で引用符でパス名が展開されない
-enzotib

@enzotib:私の間違い。それを指摘してくれてありがとう。コメントを削除しました。
ミチャウシュラージェル

[OK]を、私は... sudoの適性削除「のOpenOfficeを*」...得ることはありませんので、その方法での適性や作業を行うことができます
raulricardo21

@ raulricardo21 aptitudeでも同様のことができます。私の答えをご覧ください。
NN

4

パッケージ名で始まる文字列を照合するに^は、その前にaを追加します。
例えば:aptitude search ~n^openoffice


検索部分だけを行います。検索結果を取得する方法についても言及する必要があります
-rancho
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.