回答:
-Uオプション(--database-root PATH)を使用できます
updatedb -l 0 -U /home/user/music -o /home/user/databasefile
-oは出力ファイルに書き込みます
-l 0は、あなたがそれを読むことができるようにします。
その後、次のように使用できます。
locate -d /home/user/databasefile Dylan
-dはデータベースパスを設定します
複数のルートディレクトリでmlocateを使用するには、2つのデータベースファイルを作成し、次のように2つのデータベースパスのオプションでLocateを使用します。
locate -d /home/user/dbfile1 -d /home/user/dbfile2 searchstring
それを要約して、より具体的な質問に答えるには:
updatedb -l 0 -U /home -o /home/user/home_dbfile
updatedb -l 0 -U /data -o /home/user/data_dbfile
locate -d /home/user/home_dbfile -d /home/user/data_dbfile Dylan
updatedb -l 0 -U /home/user/music
再帰的な?私の場合にはしていないようです
ファイルを編集する /etc/updatedb.conf
PRUNEPATHS
検索したくないディレクトリを設定します
PRUNEPATHS="/tmp /var/spool /media"
PRUNEPATHS
:updatedbによってスキャンされるべきではないディレクトリのパス名の空白で区切られたリスト。各パス名は、ディレクトリがlocateによってレポートされる形式と正確に一致する必要があります。デフォルトでは、パスはスキップされません。
上記の構成情報はすべて、ユーティリティのコマンドラインオプションを使用して変更または更新できることに注意してくださいupdatedb
。
私はあなたが試すことができる他のものを見つけました:
インデックス作成についてはよくわかりません。