dpkg-query:パスマッチパターン/usr/bin/bashが見つかりません。

dpkg-query:パスマッチパターン/usr/bin/bashが見つかりません。

パッケージマネージャがそのコマンドがインストールされているパッケージを確認できないということはどういう意味ですか?
私がするとき -

$ sudo dpkg -S /usr/bin/passwd 
passwd: /usr/bin/passwd

出力を見ると、パッケージからインストールされているとpasswd推測できます。passwd

ただし、- ftpbashなどのcatいくつかのコマンドでは、lsソース情報はパッケージに関する情報を提供しません。次の出力はに適用されますが、他のコマンドなどの出力はbashまったく同じです。ftpcatls

$ sudo dpkg -S /usr/bin/bash
dpkg-query: no path found matching pattern /usr/bin/bash

それで、上記の出力が何を意味するのか混乱しています。これらのコマンドはシェルまたはカーネルに組み込まれていますか? (コマンド/utilsがcoreutilsパッケージの一部でlsあり、man lsまたはcatがこれを確認したため、そうではありません。)cat

それでは、パッケージマネージャはどういう意味ですか?コマンドがインストールされているパッケージを確認できません。

観察上の注意:

$ sudo apt list coreutils
Listing... Done
coreutils/focal,now 8.30-3ubuntu2 amd64 [installed,automatic]

そして

apt show coreutils | grep -Ew "ls|cat" 

タブレット

特に、このパッケージには
以下が含まれます。chcon chgrp chmod chown chroot cksum comm cp csplit カット日 dd df dir dircolors dirname du echo env 拡張 expr 要素 false Flock fmt 縮小グループ ヘッダーホスト ID インストール 結合リンク ln ログ名エルエスmd5sum mkdir mkfifo mknod mktemp mv nicenl nohup nproc numfmt

編集 - Stephensの答えに従います。 (別途質問でも投稿しました -Linuxでハードリンクを効果的に追跡する方法は?
ソフトリンクは処理が簡単ですが、ハードリンクは元のファイルを簡単に追跡できません。

$ ll -i /usr/bin/bash /bin/bash  
1310813 -rwxr-xr-x 1 root root 1183448 Jun 18 21:14 /bin/bash*  
1310813 -rwxr-xr-x 1 root root 1183448 Jun 18 21:14 /usr/bin/bash*

上記は予想通りです。素敵ですね。

$ find / -samefile /bin/bash 2>/dev/null
/usr/bin/bash

もう一度期待どおり - 問題ありません。

find / -samefile /usr/bin/bash 2>/dev/null
/usr/bin/bash  

これはいいえクール。これで組織ファイルをどのように追跡できますか?

奇妙さ - 以下も役に立ちません。

$ find / -inum 1310813 2>/dev/null
/usr/bin/bash

ベストアンサー1

dpkg-query: no path found matching pattern /usr/bin/bash

パッケージ/usr/bin/bash(ドロップ)配送がないことを意味します。dpkg -S代わりに、シンボリックリンクなどを無視して配送されたパッケージコンテンツを検索します。

dpkg -S /bin/bash

パッケージが出荷されたので見つけることができます/bin/bash

また見なさい:

$ dpkg -L bash|grep bin/bash
/bin/bash
/usr/bin/bashbug

で始まるとcat同様に適用されます。この場合、コマンドを検索する最善の方法は、プレフィックス付きのコマンドを見つけることです。ls/binbin/

$ dpkg -S bin/bash
bash: /usr/bin/bashbug
bash: /bin/bash

ftp はいしかし、/usr/binそれを見つけるには、次を使用してくださいreadlink

$ dpkg -S $(readlink -f /usr/bin/ftp)
ftp: /usr/bin/netkit-ftp

おすすめ記事