web-dev-qa-db-ja.com

debianでの「locate」の代替

CentOで「locate」コマンドを使用してファイルを検索することがよくあります。

Debianでのこのコマンドの代替は何ですか?

5
chubbyk

locate をお勧めします。

Sudo apt-get install locate
26
mikeserv

locate
Word自体が locate ファイルを示唆しているように、元の GNU findutilsここにコードを入力して、locateコマンドをインストールできます )、または新しい実装 Debian buster (ソースへのリンクの右側)。

whereis
コマンドのバイナリ、ソース、およびマニュアルページファイルのみを検索するにはいつでもwhereisを使用できます。 whereisにはハードコード化されたパスなので、探しているものが見つからない場合があります(そのハードコード化されたパスに含まれていない場合)。

Whereisコマンドはutil-linuxパッケージの一部であり、 https://www.kernel.org/pub/linux/utils/util-linux/ から入手できます。

どれ
whichは代わりにコマンドを検索し、はファイル(またはリンク)のパス名を返します現在の環境で実行される$ PATHを検索して、引数の名前。
-aオプションと共に使用すると、各引数の一致するすべてのパス名が出力されます。

find
データベースがないため、時間の点で効率が悪く、速度が遅くなります。提案されたソリューションの点でより効率的になります。データベースを更新する必要があります(頻繁にupdatedbを実行してください)。必要でない場合は、部分的または誤った結果になります。さらに、一部の拡張機能またはディレクトリがデータベースから除外されている可能性があります(/etc/updatedb.confファイルを参照)。

デスクトップソリューション
database で索引付けされたプログラムのみを検索している場合、デスクトップのプロジェクト NepomukStrigiSoprano KDEVirtuoso および Akonadi 、ただし Deskbar-appletBeegle Gnomeの場合。これらは、廃止されたGoogleデスクトップにいくらか似ています。
一部のデータベースシステムは、コマンドラインからも使用できます。

10
Hastur

Debianでもlocateを使用できます。インストールが必要なだけかもしれません。 LocateパッケージとMlocateパッケージには、(少なくとも)2つの実装が用意されています。

どちらかをインストールすると、locateコマンドが表示されます。

Mlocateバージョンにはいくつかの追加機能があります(権限に基づいて名前を非表示にする、より高速なインデックス作成)。

7
derobert

findを使用

find /path/to/dir -type f -name filename
4
polym

私は The Silver Searcher を使用してinsideソースコード/ファイルと mlocate に類似したこのエイリアスを探しますファイル名の場合:

alias superlocate='bash -xc '\''ag -g $0 --hidden'\''  2>/dev/null'
0
Pablo A