Linuxコマンドとファイル検索の詳しい説明

Linuxコマンドとファイル検索の詳しい説明

1. ファイル名検索を実行する

which ('実行可能ファイル' を検索) //PATH 環境変数で指定されたパスを照会します
which [-a] command //パラメータ-aは、最初に見つかったコマンドだけでなく、見つかったすべてのコマンドをリストすることを意味します。例: which ifconfig

2. ファイル名の検索

1. whereis (特定のファイルを見つける)

whereis [-bmsu] ファイル名/ディレクトリ名
-b : バイナリファイルのみを検索
-m: 手動パス内のファイルのみを検索します
-s: ソースファイルのみを検索
-u: 上記の 3 つのルールで指定されていない特殊ファイルを検索します。例: whereis ifconfig

2. 見つける

事前に構築されたインデックス ライブラリを利用するため、検索速度が速くなります。
使用法: [-ir] キーワードを検索する
-i : 大文字と小文字の違いを無視する
-r: の後に正規表現を続けると防御モードを表示できます。例:locate ifconfig
注: lcoate は /var/lib/mlocate に記録されたデータに基づいて検索し、/etc/updatedb.config の設定に従ってデータベース updatedb を更新することで、データ ソースがハード ディスクから /var/lib/mlocate に更新されます。
注意: データベースが時間どおりに更新されないため (通常は 1 日に 1 回)、whereis コマンドとlocate コマンドは削除されたファイルを検索する場合があります。ただし、updatedb を手動で実行して更新することができます。

インストール場所:
yum -y インストール mlocate
パッケージを表示:
yum 検索 mlocate
このコマンドは、インストール後にデータベースが更新された後にのみ有効になります。
updatedbを直接実行するだけです


3. 見つける

指定されたディレクトリの下のファイル システム階層を走査してファイルを検索するリアルタイム検索ツール。
動作特性:
検索速度が少し遅いです。
正確な検索;
リアルタイム検索;
使用法:
find [オプション] [PATH] [検索条件] [アクション]
検索条件: ファイル名、サイズ、タイプ、所属、権限などに基づいて検索条件を指定します。
アクション: 検索条件を満たすファイルに対して削除などのアクションを実行します。

検索条件:

1) 時間によるクエリ

日数:
-atime、-ctime、-mtime
mtimeを列として取得する
-mtime n: n は数値で、n 日前以内に変更されたファイルを指します。
-mtime -n: n 日以内に変更されたファイル (n 日目を含む)。
-mtime +n: n 日前に変更されたファイル (n 日目は含みません)。
数分で:
-アミン、-mmin、-cmin
注: これからは、次の図に示すように、1 日を 24 時間として計算されます。

2) ユーザーおよびユーザーグループによるクエリ

-uid n: n は指定された所有者の UID で、/etc/passwd で確認できます。
-gid n: nは指定されたグループのGIDで、/etc/groupで確認できます。
-ユーザー名: 名前で所有されているファイルを検索します。
-グループ名: グループ名に属するファイルを検索します。
-nouser: /etc/passwd 内で所有者のいないファイルを検索します。
-nogroup: /etc/group 内でグループに属していないファイルを検索します。
例えば: find /home -user legayu


3) ファイル名とファイル権限で検索

-name 'pattern': ファイルを検索します。
-iname 'pattern': -name と同じですが、検索対象のファイルの大文字と小文字は区別されません。
glob ワイルドカード *、? をサポートします。 ,[],[^];
-type TYPE: タイプ TYPE のファイルを検索します。一般的なファイル タイプには、通常のファイル (f)、デバイス ファイル (b、c)、ディレクトリ (d)、接続ファイル (l)、ソケット (s)、FIFO ファイル (p) などがあります。
-size [+-]SIZE: SIZEより大きい (+) または小さい (-) ファイルを検索します。サイズの指定: c: はバイト、k: は 1024 バイトを表します。また、M、G は MB と GB を表すためにも使用できます。たとえば、50kB より大きいファイルを検索するには、-size +50k と指定します。
-perm mode: ファイル権限が「ちょうど等しい」モードのファイルを検索します。
-perm -mode: ファイル権限の「すべてを含める必要がある」モードでファイルを検索します。
-perm /mode: 任意のモードを含むファイル権限を持つファイルを検索します。
例えば: find / -name passwd


4) 組み合わせ論理

付き: -a
または: -o
非:-いいえ、!
説明: 論理関係の分割と結合
!A -a !B = !(A -o B)
!A -o !B = !(A -a B )
例えば:
/tmp 内の root が所有していないファイルを検索する
2つの方法:
/tmp を検索 -not -user root -ls
/tmp -not -uid 0 -ls を検索
/tmpディレクトリ内の、所有者がルートではなく、ファイル名にfstab文字列が含まれていないファイルを検索します。

5) 特別な機能を見つける

クエリ結果に対する操作を実行する
-print: 標準出力に出力します。デフォルトのアクションです。
-ls: 見つかったファイルに対して「ls -l」コマンドを実行するのと同様に、ファイルの詳細情報を出力します。ここでは「ll」エイリアスは使用できません。
-delete: 見つかったファイルを削除します。
-fls /PATH/TO/SOMEFILE: 見つかったすべてのファイルの長い形式の情報を指定されたファイルに保存します。
-ok COMMAND {} \; : 見つかったファイルごとに COMMAND で表されるコマンドを実行します。各操作はユーザーによって確認されます。
-exec COMMAND {} \; : 見つかったファイルごとに、COMMAND で表されるコマンドを実行します。
注: find が見つかったファイル パスを次のコマンドに渡す場合、最初に条件を満たすすべてのファイル パスを検索し、それらを一度に次のコマンドに渡します。
ただし、一部のコマンドは長すぎるパラメータを受け入れることができず、その場合コマンドの実行は失敗します。
この問題を回避する別の方法:
つまり、find | xargsコマンド
たとえば、find /root -perm +644 -exec ls -l {} \;
注: {} は find によって見つかったコンテンツを参照し、'\;' は終了文字を表し、'\' はエスケープ文字です。例:
/etc ディレクトリ内で、どのユーザーにも書き込み権限がないファイルを検索します。
~]# find /etc -not -perm /222 -type f -ls
注: すべてのユーザーには少なくとも 1 つの書き込み権限があり、その逆の場合は書き込み権限がないことを意味します。
/etc ディレクトリ内で、ユーザーに実行権限がないファイルを少なくとも 1 種類見つけます。
~]# /etc を検索 -not -perm -111 -type f -ls
注: 少なくとも 1 種類のユーザーには実行権限がありません。これは実行権限の逆です。

以上が、Linux コマンドとファイル検索の詳細の統合に関する編集者の紹介です。皆様のお役に立てれば幸いです。ご質問がございましたら、メッセージを残していただければ、すぐに返信いたします。また、123WORDPRESS.COM ウェブサイトをサポートしてくださっている皆様にも感謝申し上げます。

以下もご興味があるかもしれません:
  • Linux テキスト検索コマンド find の詳細な使用方法
  • Linux でコマンドまたはプロセスの実行時間を調べる方法
  • Linux コマンド find ファイル検索の例
  • Linux の 2 つの検索コマンド:locate と find の詳細な説明
  • Linux での find コマンドの使い方の詳細な説明
  • LINUX tomcat ログキーワードコマンドの検索
  • Linux 検索フィルタリングとユーザーおよびグループ管理コマンドの例
  • Linux の 5 つの検索コマンドの概要
  • Linux でタブ (バックスペース) を含む文字を検索する grep コマンドの使い方

<<:  MySQL 5.7 のインストールと設定のチュートリアル

>>:  jQuery はピッカーをシミュレートしてスライド選択効果を実現します

推薦する

Reactは一般的なスケルトン画面コンポーネントの例を実装します

目次スケルトンスクリーンとは何ですか?デモデザインのアイデア具体的な実装スケルトンスクリーンとは何で...

Jenkins の Docker のデプロイとインストール手順

まず、Docker がインストールされたサーバーが必要です。 (私はすでにこれをサーバーにインストー...

MycliはMySQLコマンドライン愛好家にとって必須のツールです

マイクリMyCLI は、自動補完と構文の強調表示を備えた MySQL、MariaDB、および Per...

ウェブページ作成時に標準 HTML コードを使用する際のポイント

<br />多くのウェブサイト デザイナーが犯す最も一般的な間違いは、ウェブページが I...

Mysql5.7 で中国語の文字化けの問題を解決する

MySQL 5.7 を使用すると、Web ターミナル経由でデータベースに中国語の文字を書き込むと文字...

Linux システムが VMware にインストールされているかどうかを確認する方法

現在の Linux システムが VMware にインストールされているかどうかを確認する方法を教えて...

Centos7 への MySQL8 のインストールチュートリアル

MySQL 8 の新機能: MySQL をバージョン 5.x から 8.x に直接アップグレードする...

Nginx を使用して IP アドレスが悪意を持って解決されるのを防ぐ方法

Nginxを使用する目的Alibaba Cloud ECS クラウド サーバーを使用して、まずは著者...

Vue ユニットテストに推奨されるプラグインと使用例

目次フレーム最高レベルのエラー報告活発なコミュニティとチーム冗談モカ推奨プラグインVue テストライ...

フレックスレイアウトにおける画像変形の解決策の詳細な説明

フレックス レイアウトは現在よく使用されるレイアウト方法ですが、場合によっては小さな問題が発生するこ...

SSM VUE Axios の詳細な説明

目次SQL ログを表示するにはどうすればいいですか? ? SpringMVC でのパラメータ渡しの説...

JS で列挙をシミュレートする方法

序文現在の JavaScript には列挙の概念がありません。一部のシナリオでは、列挙を使用するとデ...

魔法のMySQLデッドロックトラブルシューティング記録

背景MySQL のデッドロックについて言えば、私は以前 MySQL のロックに関する基本的な紹介記事...

Vue3のレスポンシブ原則の詳細な説明

目次Vue2 レスポンシブ原則のレビューVue3 レスポンシブ原則の分析ネストされたオブジェクトの応...

ミニプログラムの基本的な使用方法の知識ポイント(非常に包括的で、お勧めです!)

目次アプリを登録するときに何をすればよいですか?ページを登録するときに通常何をする必要がありますか?...