web-dev-qa-db-ja.com

「ipkgsearchxxx」は常に答えを返しません

SynologyでNAS( '自家製' * nixバリアントを使用(おそらくDebianに基づいていますか?))ipkgパッケージマネージャーをインストールしました。次のようなコマンドを試すと

ipkg search shred 

または

ipkg search *shred* 

1行のみを返します。

Successfully terminated

パッケージ名なし。

シュレッドは私のプラットフォームに存在し、coreutilsパッケージの一部であることがわかっているので、この例では特にシュレッドを使用しました(したがって、その答えを返す必要があります)。

何が問題なのですか?これはバグですか、構文のエラーですか、それとも他の何かですか?

編集-

私は答えを見つけました-ファイル名は次のように一重引用符で囲む必要がありました

ipkg search '*shred*'

これは正解を返します-coretutils。

また、Pavelが正しいこともわかりました。これは、インストール済みパッケージに関する情報のみを返しますが、これは私が必要としていたものではありません。

より大きなコレクションの一部である特定のプログラム/ユーティリティが必要であるが、どのパッケージにそれが含まれているかわからない場合、インストールするpkgを見つけるにはどうすればよいですか?

(それは許可されていますか、それとも別の質問を開始する必要がありますか?)

1
JoelAZ

パッケージのメタデータにファイルのリストが含まれているとは思いません。 ipkg searchは、rpm -qfと同様に、インストール済みファイルのパッケージ名を取得することだけを目的としていると思います。インストールされたファイルのフルパスを指定する必要がある場合があります。

coreutilsパッケージに関する情報を探すときは、次のことを試してみてください。

ipkg info coreutils
ipkg status coreutils
ipkg files coreutils

また、インストールされているパッケージとインストールされていないパッケージで結果がどのように異なるかを確認できます。

特定のファイルを提供するインストール済みパッケージを検索する場合は、次を使用できます。

ipkg search /path/to/installed/file

編集した質問で指摘したように、完全なパス名を指定したくない場合は、アスタリスクを使用する必要があります。次に例を示します。

ipkg search \*file

ipkg search '*file'

私の意見では、存在しないファイルやインストールされていないファイルについて取得できる情報はありません。

パッケージのメタデータがダウンロードされているかどうかを確認して、ダウンロードする必要がある場合もあります。

ipkg update

より大きなコレクションの一部である特定のプログラム/ユーティリティが必要であるが、どのパッケージにそれが含まれているかわからない場合、インストールするpkgを見つけるにはどうすればよいですか?

ipkgにはデータがないため、ここでは役に立ちません。あなたのディストリビューションには、解決策となるapt-fileのようなツールはないと思います。その場合、通常、そのような情報を取得するにはWeb検索の使用に戻る必要があります。

出典:

免責事項:私はOpenWRTでopkgのみを使用しています。これはipkgに非常に近いものです。

0
Pavel Šimerda