Linuxのファイル検索

見つけます

ファイルシステムの事前に構築されたインデックスデータベースを検索  /var/lib/mlocate/mlocate.dbを 

最初のインデックスの構造に依存し、インデックスが構築され、事前に見つける検索(周期的タスク)、または手動でシステムがよりアイドル状態のときに自動的にデータベース管理者(updatedbを)を更新

インデックスは、全体のルート・ファイル・システム、資源の極端な消費を横断するプロセスのニーズを構築します。

仕事の特徴:

  1. 非リアルタイムの検索(データベース検索:探し)
  2. 高速検索
  3. あいまい参照
  4. ファイルだけでなく、ファイル名のフルパスを検索
  5. 検索ユーザーは、読み取り専用ディレクトリに実行権限を持っていること

使用法を見つけます

インストールは、コマンドが見つけ
mlocate yumをインストールし

、初期化
のsudo updatedbを

オプション

オプション 説明
-私 ケースを無視
-n 唯一の最初のいくつかの資格を一覧表示します
-r これは、正規表現をサポートしています

見つけます

実装ファインダー、完全にパスを横断することにより指定されたファイルを見つけます

プロパティ

  1. 少し遅く検索
  2. 完全に一致
  3. リアルタイム検索
  4. あなただけの読み取りを持つユーザーを検索し、ディレクトリへのアクセス権を実行することができます。

使用法を見つけます

基本的な構文:  検索 [OPTION] ... [検索パス] [検索条件] [処理の動作] 

  • パスを検索:この検索場所としてパスを指定します。
  • 利用規約を検索:ファイル名、サイズ、種類権限:検索条件として指定することができます。
  • アクション:画面に、ファイルの要件を満たすために検索する内容デフォルトの出力を行います。

検索条件

1.検索レベル

-maxdepthレベル最大深さ検索ディレクトリ、レベル1にディレクトリを指定する
レベルの最小深さ検索ディレクトリ-mindepth

2.ファイル名とiノードのルックアップ

-name「ファイル名」のワイルドカードグロブの使用ファイル名のサポートを探す
-iname「ファイル名」は大文字と小文字を区別しません
-inumをn個のiノード番号での検索は
、ファイルの同じinode番号名前-samefile 
n個-linksをn個のファイルへのリンク数
-全体ファイルパス文字列だけでなく、ファイル名と一致する正規表現「PATTERN」PATTERN

所有者は、グループ検索で

所有者の-userのUSERNAME指定したユーザーを探す(UID)は、ファイル
指定したグループのために-基GRPNAMEルックアップは(GID)のファイルグループである
-uidユーザーIDのルックアップファイル指定のUID番号によって所有され
、指定検索などグループのGroupIDを-gidされますファイルのGID番号
のファイルの所有者が見つからない-nouser 
-nogroupがファイルを見つけるには、グループに属していません

ファイルタイプを探す4。

TYPEの型:
    F:通常ファイル
    D:ディレクトリファイル
    L:シンボリックリンク
    S:ソケットファイル
    B:ブロックデバイスファイル
    C:文字デバイスファイル
    P:パイプファイル

ファイルサイズ

-size [+ | - ]#ユニットの共通単位:K、M、G、C (バイト) 
    例えば:-size 2K(〜1K、2K)の値と一致
         -size-5K 5K含む(0-4kの範囲内に)
         (5K + 5Kを含まない範囲で-size +。5K)

タイムスタンプの検索

ユニットとして"日" 
-atime [+ | - ]#読み時間
    #:[#、#+ 1]回
    +#:[#日以上] 
    - #:[0、は##日が含まれていません] 
-mtime修正時間
-ctime時間のステータスの変化

単位として「分」へ
    -アミン
    -mmin 
    -cmin

7.検索根絶ファイルのパーミッション

-perm#
    例えば:-perm 600 
          /600以上ファジーマッチング
          -602他有するリードアクセス許可ビットが一致します

処理操作

デフォルトアウト-print印刷は、
詳細情報が表示され-ls 
一致していること-delete削除ファイル
-flsファイルが指定したファイルにリダイレクトされたファイルと一致する
コマンドがファイルごとにコマンドを指定し、各ファイルには対話が必要です。-okコマンドを{} \ユーザが確認
\ -exec COMMAND {};同様-ok、それを確認するためにユーザとの対話を必要としません。

条件の組み合わせ

:-a 
または:-o 
非:-not ,!

この章の演習

1.使用した場合の問い合わせパスワードファイルを無視するために探し

2.使用検索クエリ/何の所有者はのグループではありません、すべてのファイル

3.ルート777へのリンクが含まれているファイルの検索クエリの所有者の許可ビットは、グループが任意のテストではありません
 
4。 hh1-10見つけるために使用を見つけて削除ファイル

は/ var / log /通常のファイルとして次のように入力し検索する5.使用検索し、問い合わせの日前に七日に合わせて変更されたすべてのファイル

答え

1.使用した場合の問い合わせパスワードファイルを無視するように見つけ
-iパスワードを見つける

2.の検索クエリ/一切の所有者は、ファイルのグループです
/ -nouser -nogroupを見つけていない

3.検索クエリはルートによって所有されて使用すると、すべてのテストにグループではありません許可ビット777個のリンクされたファイルが含まれてい
 -userルートがテスト-perm / 777型L -group -not /見つける
 
hh1-10見つけること4.利用見つけて削除ファイルを
検索/ -iname「HH *」-exec {RM -rfを} \; 

5.利用探すの/ var /ログ/によれば、一般的なファイルの次の種類、7日前までのすべてのファイル変更日クエリ
検索は/ var / log / -type F -mtime +7

  

 

おすすめ

転載: www.cnblogs.com/yanshicheng/p/12323828.html
おすすめ