Debian コンピュータでファイルを見つけて、uname
どのパッケージから来たのかを確認して削除する必要があります。私がそれを見つけようとしたときwhich
、私は得ました/usr/bin/uname
。確認してみるとdpkg -S uname
そんなファイルはありません。それでも一つあります/bin/uname
。それらの違いは何ですか?
答え1
Ubuntuでは違いはありません。bin
シンボリックリンクです/usr/bin
、一部Debian システム他のさまざまなディストリビューションがあるため、バイナリは両方の場所に表示されます。
パッケージは、特定のバイナリを提供するパッケージを見つけるために、2 つの場所のいずれかにファイルを送信できます。bin/
続いてバイナリを探します。
dpkg -S bin/uname
答え2
最初に利用可能なすべてのファイルをインポートするには、またはtype
を使用します。type -a
uname
which
「which」を使わないのはなぜですか?それでは何を使うべきですか?。
次に、どのパッケージが特定のファイルを提供しているかを確認するには、そのファイルのフルパス(またはファイルbin/filename
がバイナリファイルの場合)を使用できます。スティーブンが説明するように)。たとえば、Ubuntuシステムでは、次のような結果が得られます。
$ type -a uname
uname is /bin/uname
だからこれは私が渡す必要がありますdpkg -S
:
$ dpkg -S /bin/uname
coreutils: /bin/uname
だからそれはすべてです。/bin/uname
梱包してお届けしますcoreutils
。