Linux テキスト検索コマンド find の詳細な使用方法

Linux テキスト検索コマンド find の詳細な使用方法

find コマンドは主にディレクトリやファイルを検索するために使用され、一致のために複数のパラメータを指定できます。

使用方法: find +查找路徑 +命令參數 [輸出形式]

検索パス:検索する場所を指定します

コマンド パラメータ:タイプ、名前、サイズ、変更時刻などのさまざまな属性を含む、検索するファイル属性を指定します。

よく使用されるパラメータ:

  • -name ファイル名で検索
  • -user ファイルの所有者で検索
  • -mtime はファイルの変更時間で検索します。-n はファイルの変更時間が今日から n 日以内であることを意味し、+n はファイルの変更時間が今日から n 日以上であることを意味します。
  • -type ファイルタイプで検索します。d はディレクトリ、f はファイル、l はシンボリックリンクファイルを意味します。
  • -size ファイルサイズで検索(単位 K、M、G を追加する必要があります)、+n M は n M より大きいファイルを検索することを意味します。
  • -maxdepth は、ファイルを検索するときの最大深度を指定します (デフォルトでは、指定されたパスの下のすべてのサブディレクトリを検索します。深度を指定すると、第 1 レベルのディレクトリまたは第 2 レベルのディレクトリのみを検索できるようになります)

出力形式:出力形式はオプションです。出力形式には、見つかったコンテンツを印刷する -print (デフォルトでは見つかったコンテンツを印刷するため、通常は使用されません) と、見つかったコンテンツをさらに処理する -exec (より一般的に使用されます) があります。形式は次のとおりです。

-exec Linuxコマンド {} \; {}は見つかったコンテンツを表します

例:

find . -maxdepth 1 -name "1.txt" # 検索するファイル名を直接指定します。-maxdepth 1 は、最大検索レベルが第 1 レベルのディレクトリであることを意味します。 

find . -maxdepth 1 -name "*.txt" # 現在のディレクトリで .txt で終わるファイルを検索します

find . -maxdepth 1 -name "[0-9].txt" # 数字で名前が付けられたtxtファイルを検索

find . -maxdepth 1 -name "[0-9]*.txt" # 数字で始まるファイルを検索

find . -maxdepth 1 -mtime -5 # 現在のディレクトリで 5 日以内に変更されたファイルを検索find . -maxdepth 1 -mtime +5 # 現在のディレクトリで 5 日以上変更されたファイルを検索find . -maxdepth 1 -type d # 現在のディレクトリでディレクトリ タイプのファイルを検索します。最大検索レベルは 1 ディレクトリです (隠しディレクトリも検索されます) 

find . -maxdepth 1 -size +10M # 現在のディレクトリで 10M より大きいファイルを検索 find . -maxdepth 1 -size -1M # 現在のディレクトリで 1M より小さいファイルを検索

find . -maxdepth 1 -name "[az].txt" -exec rm -rf {} \; # 1 文字で名前が付けられた txt ファイルを検索して削除します find . -maxdepth 1 -name "*.txt" | xargs grep "error" # txt で終わるファイル内の error のある行の内容を出力します find . -maxdepth 1 -name "*.txt" | xargs rm # 現在のディレクトリ内の txt で終わるファイルを削除します

xargsはパイプラインの前のコマンドの実行結果を、パイプラインの後のコマンドにパラメータとして1つずつ渡します。

ls [az].txt | xargs -n1 -i{} mv {} {}.bak # 現在のディレクトリにある 1 文字で名前が付けられた txt ファイルに .bak サフィックスを追加します。-n1 はオブジェクトを 1 つずつ処理することを意味します。-i{} は前のオブジェクトを {} に置き換えます。mv {} {}.bak は mv a.txt a.txt.bak と同じです。 

要約する

以上がこの記事の全内容です。この記事の内容が皆様の勉強や仕事に何らかの参考学習価値をもたらすことを願います。123WORDPRESS.COM をご愛顧いただき、誠にありがとうございます。これについてもっと知りたい場合は、次のリンクをご覧ください。

以下もご興味があるかもしれません:
  • Linux での透過的巨大ページの使用と無効化の概要
  • Linux での Python のアップグレードと pip のインストールの詳細な説明
  • Linux シェル ディレクトリ内のファイルを検索するために、if と組み合わせた for ループを使用する方法
  • Linuxで現在のスクリプトの実際のパスを取得する方法
  • Linuxはlsofコマンドを使用してファイルのオープンステータスを確認します
  • Linux 仮想メモリ設定のチュートリアルと実践
  • Linux での grep コマンドの使い方の詳細な説明
  • Linuxのテキスト処理コマンドsortの詳細な説明
  • Linuxのsortコマンドの複数のパラメータを理解するための1つの質問
  • Linux で文字化けしたファイルや特殊文字のファイルを削除する方法

<<:  CocosCreatorでクールなレーダーチャートを描く方法

>>:  Centos7 で yum を使用して Mysql5.7.19 をインストールする詳細な手順

推薦する

Mac で MySQL バージョン 5.6 のパスワードを設定する方法

MySQLはインストール時に設定できますが、それより低いバージョンは設定できないようで、インストール...

WeChatミニプログラムの基本チュートリアル:Echartの使用

序文まずは最終的な効果を見てみましょう。私が自分で作った小さなデモです。まずEChartsの公式サイ...

Linux で MySQL データベースのデータ ファイル パスを変更する手順

rpm インストール方法を使用して MySQL データベースをインストールした後、データ ファイルの...

docker を使用して Windows 10 Home バージョンで Laravel 開発環境を構築する方法の詳細なチュートリアル

オペレーティング·システム: Win10 ホームエディションDockerをインストールします:公式サ...

Nexus を使用して jar パッケージをプライベート サーバーに追加する方法

なぜ Nexus プライベート サーバーを構築する必要があるのでしょうか。その理由は非常に簡単です。...

Mysqlは日付範囲の抽出方法を指定します

データベースを操作する過程では、いくつかの指標を日付別にまとめたり、一定期間内の合計金額をカウントし...

美しいHTMLコードの書き方

美しい HTML コードの外観 美しい HTML コードの書き方。外国人が書いた記事: 美しい HT...

LinuxにMySQLをインストールし、外部ネットワークアクセスを構成する例

設定手順1. DNSが設定されているかどうかを確認するDNSが設定されていない場合は、前の記事を参照...

Flash が HTML div 要素を覆わないようにする方法

今日、フラッシュ広告のコードを書いていたとき、フラッシュに付属するリンクはポップアップ広告と間違われ...

HTML入力ボックスの最適化により、ユーザーエクスペリエンスと使いやすさが向上します。

ユーザーエクスペリエンスと使いやすさを向上させるために、入力ボックスなど、Web ページでユーザーが...

MySQL 5.7.23 のインストールと設定のグラフィックチュートリアル

この記事では、mysql5.7.23 の詳細なインストールプロセスを記録し、皆さんと共有します。 1...

Linux lessコマンド例の詳細な説明

ファイル名が少ないファイルを表示ファイル名を少なく | grep -n コンテンツを検索内容に応じて...

JavaScript での && および || 演算子の使用例

目次序文&& 演算子|| 演算子|| 演算子の簡単なデモ章の目的ケース演習(json...

データベースの水平セグメンテーションを実装するための2つのアイデア

導入インターネット アプリケーションの普及に伴い、膨大なデータの保存とアクセスがシステム設計における...

JavaScript 即時実行関数の使用状況分析

一般的に、関数は実行する前に呼び出す必要があることはご存じのとおりです。以下に示すように、関数を定義...